Menghitung Akar Persamaan Kuadrat Dev C++


Kode program menghitung akar persamaan kuadrat

Suatu persamaan kuadrat ax2+bx +c=0 memiliki akar penyelesaian berupa x1 dan x2. Ditinjau dari diskriminannya, ada tiga kemungkinan bentuk akar-akarnya. Dalam hal ini diskriminan diperoleh melalui rumus b2-4ac.
⦁ Bila diskriminan lebih besar dari pada nol, kedua nilai x yang menjadi solusi persamaan tersebut berupa bilangan real. Sebagai contoh, persamaan x2-4x+3= 0 memiliki penyelesaian berupa 1 dan 3.
⦁ Bila diskriminan sama dengan nol, kedua nilai x yang menjadi solusi persamaan tersebut berupa bilangan kembar. Sebagai contoh, persamaan 4×2-12x+9=0 memiliki penyelesaian berupa 1,5 dan 1,5.
⦁ Bila diskriminan kurang dari nol, kedua nilai x yang menjadi solusi persamaan tersebut berupa bilangan kompleks. Sebagai contoh, persamaan 5×2+5x+2,05=0 memiliki penyelesaian berupa -0,5+0,4j dan -5-0,4j.
Penentuan x1 dan x2 didasarkan pada rumus berikut:

Buatlah algoritma dan program untuk menyelesaikan masalah di atas.
Algoritma:
Algoritma berikut mengamsusikan bahwa a maupun b tidak berupa nol.
⦁ masukkan(a, b, c).
⦁ diskriminan ← b x b – 4 x a x c
⦁ JIKA diskriminan
x1 ← (-b + akar(diskriminan))/(2 x a)
x2 ← (-b + akar(diskriminan))/(2 x a)
tampilkan(“Akar real”, x1, x2)
SEBALIKNYA
JIKA diskriminan = 0 MAKA
x1 ← -b / (2 x a)
x2 ← x1
tampilkan(“Akar kembar”, x1, x2)
SEBALIKNYA
re ← -b / (2 x a) //Bagian real
im ← akar(|b x b – 4 x a x c|) / (2 x a) // Bagian imajiner
tampilkan(“Akar kompleks”)
tampilkan(“x1=”,re,”+”,im,”i”)
tampilkan(“x2=”,re,”+”,im,”i”)
AKHIR-JIKA
AKHIR-JIKA

Program:
Implementasi dalam C++:

 

#include <iostream>
#include <math.h>
using namespace std;
int main()
{
char lagi;
do
{
double ip, a, b, c;
double diskriminan, x1, x2, re, im;

cout <<"|======================================|\n";
cout <<"|Kode Menghitung Akar Persamaan Kuadrat|\n";
cout <<"|======================================|\n";
cout << "a: ";
cin >> a;

cout << "b: ";
cin >> b;

cout << "c: ";
cin >> c;

// Hitung dskriminan
diskriminan = b * b - 4 * a * c;

// Evaluasi diskriminan
if (diskriminan > 0)
{
x1 = (-b + sqrt(diskriminan)) / (2 * a);
x2 = (-b - sqrt(diskriminan)) / (2 * a);
cout << "Akar real:\n";
cout << "x1 = " << x1 << "\n";
cout << "x2 = " << x2 << "\n";
}
else
if (diskriminan == 0)
{
x1 = -b / (2 * a);
x2 = x1;
cout << "Akar kembar:\n";
cout << "x1 = " << x1 << "\n";
cout << "x2 = " << x2 << "\n";
}
else /* diskriminan < 0 */
{
re = -b / (2 * a);
im = sqrt(fabs(diskriminan))/(2 * a);
cout << "Akar kompleks\n";
cout << "x1 = " << re << " + " << im < "\n";
cout << "x2 = " << re << " - " << im < "\n";
}
cout<<"\n\nReply [Y/T] : ";cin>>lagi;
}
while(lagi == 'y' || lagi == 'Y');
cout<<"\n";
cout <<"|==========================|\n";
cout <<"| TEKAN ENTER UNTUK KeLUAR!|\n";
cout <<"| creative : Faisal Habib  |\n";
cout <<"===========================|\n";
return 0;
}

 

Dengan Hasil running :

 

Rich Snippets
Published
Article
Menghitung Akar Persamaan Kuadrat
Ratings
51star1star1star1star1star

Kata Bijak? Google banyak!

You may also like...

Leave a Reply