Ominide 1919 punti

C++ - Risolutore Equazioni di Secondo Grado

Oggi faremo in C++ un programma molto utile nella risoluzione delle equazioni di secondo grado. Una delle funzioni di questo programma è riconoscere se un'equazione di secondo grado ha due soluzioni, una sola o è impossibile (nell'insieme dei numeri reali!).
Ricapitolando matematicamente, l'equazione
[math]ax^2+bx+c=0[/math]
ha 2 soluzioni se:
[math]b^2-4ac > 0[/math]
;
ha una soluzione se:
[math]b^2-4ac = 0[/math]

non ha soluzioni in R se:
[math]b^2-4ac < 0[/math]

Programma:
#include <iostream>
#include <cstdlib>
#include <math.h>
using namespace std;

int main()
{
float gradodue, gradouno, terminenoto, delta1, delta2, numeratoretot1, numeratoretot2, deltatot, numeratore1, x, numeratoretotale, soluzione1, soluzione2, denominatore;
cout << "Inserisci il termine di grado 2"<<endl;
cin>>gradodue;
cout << "Inserisci il termine di grado 1"<<endl;
cin>>gradouno;
cout << "Inserisci il termine noto"<<endl;
cin>>terminenoto;
numeratore1 = -gradouno;
delta1 = gradouno * gradouno;
delta2 = 4 * terminenoto * gradodue;
x = delta1-delta2;
deltatot = sqrt(x);
denominatore = 2 * gradodue;
numeratoretot1 = numeratore1+deltatot;
numeratoretot2 = numeratore1-deltatot;
soluzione1 = (numeratoretot1)/denominatore;
soluzione2 = (numeratoretot2)/denominatore;
if(x < 0){
cout <<"L'equazione e' impossibile"<<endl;
}else if(x == 0){
cout <<"L'unica soluzione e' "<<soluzione1<<endl;
}else{
cout <<"La prima soluzione e' " <<soluzione1<< endl;
cout <<"La seconda soluzione e' " <<soluzione2<< endl;
}
system("pause");
}

Hai bisogno di aiuto in Informatica?
Trova il tuo insegnante su Skuola.net | Ripetizioni
Potrebbe Interessarti
Registrati via email