Equazione di 2° grado

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[])
   {
      String stringa;
      double a, b, c, // input
             delta,   // working
             x1, x2;  // output 

      // INPUT CONTROLLATO: a <> 0
      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;
      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
}

Osserva

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