Tutaj będę umieszczał programy mojego autorstwa zrealizowane głównie w języku c++/c.

Nic nie dzieje się wbrew naturze,
lecz wbrew temu, co o niej wiemy.

Fox Mulder w serialu „Z archiwum X”

2.10.08

Obliczanie pierwiastków równania kwadratowego

Poglądowy program realizujący wyznaczanie pierwiastków równania kwadratowego.


#include <iostream>
#include <cmath>

using namespace std;

void BrakRozwiazan()
{
   cout << "Rownanie nie posiada rozwiazan";
}

void JednoRozwiazanie(float A, float B, float C)
{
   float fWynik = (-B) / (2 * A);
   cout << "Rownanie ma jedno rozwiazanie X = " << fWynik;
}

void DwaRozwiazania(float A, float B, float C, float Pierwiastek)
{
   float fWynik1 = (-B + Pierwiastek) / (2 * A);
   float fWynik2 = (-B - Pierwiastek) / (2 * A);
   cout << "Rownanie ma dwa rozwiazania \n";
   cout << "X1 = " << fWynik1;
   cout << endl;
   cout << "X2 = " << fWynik2;
}


int main()
{
   float fA, fB, fC;
   float fDelta, fPierwiastek;

   cout << "Podaj parametry rownania kwadratowego postaci \n";
   cout << "A * X^2 + B * X + C = 0 \n";
   cout << "A =";
   cin >> fA;
   cout << "B =";
   cin >> fB;
   cout << "C =";
   cin >> fC;

   fDelta = (fB * fB) - 4 * fA * fC;
   fPierwiastek = sqrt(fDelta);


     if (fDelta < 0)
     {
       BrakRozwiazan();
     }

     if (fDelta == 0)
     {
       JednoRozwiazanie(fA, fB, fC);
     }

     if (fDelta > 0)
     {
       DwaRozwiazania(fA, fB, fC, fPierwiastek);
     }


   cout << endl;
   system("PAUSE");
   return 0;

}



Brak komentarzy: