Informatica 2 Liceo Scientifico Scienze Applicate/Esercizio Equazione 2^ grado

Wikibooks, manuali e libri di testo liberi.
Indice del libro

Esercizio: Risoluzione di una equazione di secondo grado.[modifica]

La spiegazione dell' esercizio la puoi trovare qui assieme al suo diagramma di flusso.


I nuovi elementi presenti nel programma sono:

  • l'uso di nuovi comandi matematici contenuti nella libreria math , per poterla includere nel programma e' stata aggiunta la riga #include <math.h>
  • la funzione sqrt( ) che calcola la radice quadrata dell'espressione scritta fra parentesi rotonde, ad esempio

z= sqrt(a+12); carica in z la radice quadrata di 12 + il valore della variabile a

Questo e' il programma



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

/* calcolo delle radici di una equazione di secondo grado della forma 
   ax^2+bx+c=0;
  obiettivo: concetto algoritmo, diagramma di flusso, analisi di un problema
             , diramazioni flusso , esempio if a 2 vie  
*/
int main(int argc, char *argv[])
{
  float a,b,c;
  float x1,x2;
  float discriminante;
  
  cout <<"inserisci i coeff di una eq di secondo grado"<<endl;
  cout <<"della forma ax^2+bx+c=0; "<<endl;
  cout <<"a=? ";
  cin >> a;
  cout <<"b=? ";
  cin >> b;
  cout <<"c=? ";
  cin >> c;
  discriminante = b*b - 4*a*c;
  if ( discriminante <0)
     { cout <<endl<<"non ci sono soluzioni reali"<<endl ;
     }
  else
     { 
       x1= (-b -sqrt(discriminante))/(2*a);
       x2= (-b +sqrt(discriminante))/(2*a);
       cout <<"ci sono due soluzioni "<<endl;
       cout <<"x1 = "<< x1<< endl;
       cout <<"x2 = "<< x2<<endl;
      }
  cout<<"il programma e' terminato"<<endl;  
  system("PAUSE");         
  return 0;
}