C ++ -ohjelma toisen asteen yhtälön kaikkien juurien löytämiseksi

Tämä ohjelma hyväksyy asteikon yhtälön kertoimet käyttäjältä ja näyttää juuret (sekä todelliset että monimutkaiset juuret riippuen erottelijasta).

Tämän esimerkin ymmärtämiseksi sinulla on oltava tieto seuraavista C ++ -ohjelmointiaiheista:

  • C ++ jos, jos… muu ja sisäkkäinen, jos … muuten

Neliöyhtälölle ax 2 + bx + c = 0 (missä a, b ja c ovat kertoimia) sen juuret annetaan kaavan mukaisesti.

Termi tunnetaan toisen asteen yhtälön erottelijana. Erottelija kertoo juurien luonteen.b2-4ac

  • Jos erotteleva on suurempi kuin 0, juuret ovat todellisia ja erilaisia.
  • Jos erotteleva on yhtä suuri kuin 0, juuret ovat todellisia ja yhtäläisiä.
  • Jos syrjivä tekijä on alle 0, juuret ovat monimutkaisia ​​ja erilaisia.

Esimerkki: Neliöllisen yhtälön juuret

 #include #include using namespace std; int main() ( float a, b, c, x1, x2, discriminant, realPart, imaginaryPart; cout <> a>> b>> c; discriminant = b*b - 4*a*c; if (discriminant> 0) ( x1 = (-b + sqrt(discriminant)) / (2*a); x2 = (-b - sqrt(discriminant)) / (2*a); cout << "Roots are real and different." << endl; cout << "x1 = " << x1 << endl; cout << "x2 = " << x2 << endl; ) else if (discriminant == 0) ( cout << "Roots are real and same." << endl; x1 = -b/(2*a); cout << "x1 = x2 =" << x1 << endl; ) else ( realPart = -b/(2*a); imaginaryPart =sqrt(-discriminant)/(2*a); cout << "Roots are complex and different." << endl; cout << "x1 = " << realPart << "+" << imaginaryPart << "i" << endl; cout << "x2 = " << realPart << "-" << imaginaryPart << "i" << endl; ) return 0; )

Tuotos

Syötä kertoimet a, b ja c: 4 5 1 Juuret ovat todellisia ja erilaisia. x1 = -0,25 x2 = -1

Tässä ohjelmassa sqrt()kirjastotoimintoa käytetään luvun neliöjuurin etsimiseen.

Mielenkiintoisia artikkeleita...