Home • ECDL • Algoritmi • Java • Basi di dati • Seconda prova • Eccetera • Cerca nel sito

Equazione di 2° grado

Precedente
SUPERIORE
Successiva

Radici dell'equazione di 2° grado: dati a, b, c (con a<>0) calcolare le radici reali...

import javax.swing.JOptionPane; 

public class Equazione2grado
{
   public static void main(String args[])
   {
       double a, b, c,  // input
              delta,    // working
              x1, x2;   // output          	  

       String stringa;

       // input controllato: a
       do
       {
          stringa=JOptionPane.showInputDialog("a? (a <> 0)"); 
          a=Double.parseDouble(stringa);
       }
       while(a == 0);
       
       stringa=JOptionPane.showInputDialog("b?"); 
       b=Double.parseDouble(stringa);
       
       stringa=JOptionPane.showInputDialog("c?"); 
       c=Double.parseDouble(stringa);
       
       delta=b*b-4*a*c;  	// discriminante
       
       if(delta > 0)
       {
       	   x1=(-b - Math.sqrt(delta))/(2*a);
       	   x2=(-b + Math.sqrt(delta))/(2*a); 
       	   
           stringa="Due soluzioni reali distinte" + "\n" +
       	           "X1 = " + x1                   + "\n" +
	           "X2 = " + x2                          ;	                   	        
       }                   
       else if(delta == 0)
       {
       	   x1=-b/(2*a);
       	          	   
       	   stringa="Una soluzione reale"               + "\n" +
       	           "(Due soluzioni reali coincidenti)" + "\n" +
       	           "X1 = X2 = " + x1                          ;
       }                   
       else
      	   stringa="Non ammette soluzioni reali"; 

       JOptionPane.showMessageDialog(null, stringa);

   }//main

}//Equazione2grado

Osserva

  1. if(...)
    {
      ...
    }
    else if(...)
    {
      ...
    }
    else
    {
      ...
    }
  2. x1=(... - ...)/(...);
    x2=(... + ...)/(...);
 

Equazione di 2° grado - ApPuNtIdIuNiNfOrMaTiCo

Home • ECDL • Algoritmi • Java • Basi di dati • Seconda prova • Eccetera • Cerca nel sito

Precedente
SUPERIORE
Successiva