Latihan kode program bahasa C di Duniailkom kali ini akan membahas cara mencari akar persamaan kuadrat. Materi ini berhubungan dengan logika matematika, penggunaan operator aritmatika, serta kondisi if else.
Soal Mencari Akar Persamaan Kuadrat
Buatlah kode program dalam bahasa C untuk mencari akar persamaan kuadrat dengan format ax2 + bx + c = 0
. Program meminta 3 inputan, yakni a, b dan c. Hasilnya akan menampilkan akar x1 dan x2, atau teks "akar imajiner" jika determinan < 0.
Bonus: Tampilkan juga nilai determinan.
Berikut contoh tampilan akhir yang diinginkan (1) :
## Program Bahasa C Mencari Akar Persamaan Kuadrat ## ===================================================== Format persamaan: ax^2 + bx + c = 0 Input nilai a: 1 Input nilai b: 9 Input nilai c: 18 Diskriminan = 9 (akar real dan berbeda) x1 = -3.00 x2 = -6.00
Berikut contoh tampilan akhir yang diinginkan (2) :
## Program Bahasa C Mencari Akar Persamaan Kuadrat ## ===================================================== Format persamaan: ax^2 + bx + c = 0 Input nilai a: 1 Input nilai b: 8 Input nilai c: 16 Diskriminan = 0 (akar real dan sama) x1 = -4.00 x2 = -4.00
Berikut contoh tampilan akhir yang diinginkan (3) :
## Program Bahasa C Mencari Akar Persamaan Kuadrat ## ===================================================== Format persamaan: ax^2 + bx + c = 0 Input nilai a: 1 Input nilai b: 6 Input nilai c: 10 Diskriminan = -4 (akar tidak real / imajiner)
Silahkan coba sebentar membuat kode program ini.
Tips Membuat Kode Program Mencari Akar Persamaan Kuadrat
Untuk soal yang melibatkan perhitungan matematika, kita harus fokus ke rumus yang diperlukan. Dari rumus itulah nantinya akan dirancang algoritma pemrograman.
Pencarian akar kuadrat dengan format ax2 + bx + c = 0 bisa menggunakan rumus berikut:
Selain itu ada syarat tambahan berhubungan dengan jenis akar kuadrat. Ini didapat dari menghitung determinan (D) menggunakan rumus b2 – 4ac:
- Jika D > 0, maka akar real dan berbeda
- Jika D = 0, maka akar real dan sama
- Jika D < 0, akar tidak real / imajiner
Khusus untuk D < 0, tidak perlu dicari akar kuadrat karena hasilnya berbentuk angka imajiner.
Untuk kode program sendiri, butuh dasar yang berhubungan dengan variabel, operator aritmatika, dan kondisi if else. Berikut tutorial pendahuluan yang bisa diikuti:
- Pengertian Variabel Bahasa C
- Cara Penggunaan Perintah scanf
- Tipe Data Integer Bahasa C
- Jenis-jenis Operator Aritmatika Bahasa C
- Percabangan Kondisi IF ELSE IF Bahasa C
Kode Program C Mencari Akar Persamaan Kuadrat
Berikut salah satu solusi dari soal mencari akar persamaan kuadrat menggunakan bahasa pemrograman C:
#include <stdio.h> int main(void) { printf("## Program Bahasa C Mencari Akar Persamaan Kuadrat ## \n"); printf("===================================================== \n\n"); int a, b, c, D; float x1, x2; printf("Format persamaan: ax^2 + bx + c = 0 \n"); printf("Input nilai a: "); scanf("%d",&a); printf("Input nilai b: "); scanf("%d",&b); printf("Input nilai c: "); scanf("%d",&c); printf("\n"); D = (b*b)-(4*a*c); printf("Diskriminan = %d",D); if (D>0){ printf(" (akar real dan berbeda) \n"); x1 = (-b + sqrt(D)) / (2*a); x2 = (-b - sqrt(D)) / (2*a); printf("x1 = %.2f \n",x1); printf("x2 = %.2f \n",x2); } else if (D==0){ printf(" (akar real dan sama) \n"); x1 = x2 = (-b + sqrt(D)) / (2*a); printf("x1 = %.2f \n",x1); printf("x2 = %.2f \n",x2); } else { printf(" (akar tidak real / imajiner) \n"); } return 0; }
Kode program ini memang cukup panjang. Saat dijalankan pertama kali, program akan meminta user untuk menginput variabel a, b, dan c antara baris 12 – 17.
Nilai determinan dicari pada baris 21 dengan perintah D = (b*b)-(4*a*c). Nilainya kemudian ditampilkan dengan perintah printf di baris 22.
Berdasarkan nilai determinan yang tersimpan dalam variabel D, kita masuk ke 3 kondisi if else antara baris 24 – 43. Setiap kondisi sesuai dengan rumus menghitung akar kuadrat sebelumnya.
Demikian kode program mencari akar persamaan kuadrat menggunakan bahasa pemrograman C. Semoga tutorial ini bisa bermanfaat.