Equazione di II grado

Chiede i 3 dati numerici e calcola le soluzioni dell’equazione di II grado.

  • Per a=0 risolve l’equazione di I grado corrispondente.
  • La comunicazione avviene con prompt() e alert().

<script>
  var a=parseFloat(prompt("Coefficiente a?"))
  var b=parseFloat(prompt("Coefficiente b?"))
  var c=parseFloat(prompt("Coefficiente c?"))
  var r

  if(isNaN(a) || isNaN(b) || isNaN(c))
      r="Inserisci i dati correttamente!"
  else
  {
      if(a == 0)                                 // di primo grado
      {
           r="Equazione di primo grado\n\n"
           if(b != 0)
           {                                      // una soluzione
                x=-c/b
                r += "x = " + x
           }
           else if(c != 0)                        // nessuna soluzione
           {
                r += "Impossibile"
           }
           else                                   // infinite soluzioni
           {
                r += "Indeterminata";
           }
      }
      else                                        // di secondo grado
      {
           r="Equazione di secondo grado\n\n"
           delta=b*b-4*a*c
           if(delta > 0)                         // due soluzioni distinte
           {
                delta=Math.sqrt(delta)
                x1=(-b-delta)/(2*a)
                x2=(-b+delta)/(2*a)

                r += "x1 = " + x1 + "\nx2 = " + x2
           }
           else if(delta == 0)                   // due soluzioni coincidenti
           {
                x=-b/(2*a)
                r += "x1 = x2 = " + x
           }
           else                                   // nessuna soluzione
           {
                r += "Non ammette soluzioni reali"
           }
      }
  }

  alert(r)

</script>

Lascia un commento