Java >> Tutoriel Java >  >> Java

Programmes Java pour trouver toutes les racines d'une équation quadritique

Une équation est dite une équation quadratique s'il est de la forme ax2+bx+c=0 où a,b,c sont des nombres réels et a n'est pas égal à 0. La forme standard de l'équation et la formule pour la calculer sont les suivantes :

Une équation quadratique a deux racines et ces deux racines dépendent du discriminant. Dans la formule ci-dessus, sqrt((b*b)-(4*a*c)) est connu comme le discriminant.

  • Si le discriminant est positif, alors les racines sont réelles et inégales.
  • Si le discriminant est 0, alors les racines sont réelles et égales.
  • Si le discriminant est négatif, alors les racines sont inégales et imaginaires.

Ici, on nous donne une équation quadratique et notre tâche est de trouver les racines de cette équation. Par exemple,

Saisie : 1 -2 1

Sortie : 1 1

Programme 1 :Trouver l'équation quadratique

Dans ce programme, les racines des équations quadratiques sont trouvées dans la méthode principale elle-même.

Algorithme :

  1. Démarrer
  2. Déclarez les variables a,b,c.
  3. Initialiser les variables a,b,c.
  4. Calculez les racines de l'équation quadratique dans la méthode principale elle-même.
  5. Vérifiez si les racines sont possibles ou non en utilisant la condition a==0.
  6. Calculez le discriminant comme Discriminant=sqrt((b*b)-(4*a*c)).
  7. Si discriminant.>0, alors les racines sont réelles et inégales.
  8. Calculez les racines comme ( -b+ discriminant ) /(2 *a) et ( -b - discriminant ) /(2 *a).
  9. Si discriminant=0, alors les racines sont réelles et égales.
  10. Calculez les racines comme (-b + Discriminant) /( 2*a).
  11. Si discriminant>0, alors les racines sont complexes et différentes.
  12. Calculez les racines comme (-b/(2*a)) + iD et (-b/(2*a)) - iD.
  13. Afficher les racines.
  14. Arrêter

Vous trouverez ci-dessous le code correspondant.

Dans cet exemple, nous trouverons directement les racines des équations quadratiques. Dans un premier temps, les coefficients des équations quadratiques sont déclarés et initialisés. Et puis on trouve directement les racines de l'équation quadratique dans la méthode principale elle-même.

//Java Program to find the roots of the quadratic equation
import java.util.Scanner;
public class QuadraticEquation
{

     public static void main(String []args)
     {
        Scanner sc=new Scanner(System.in);
        double a,b,c;      //Quadratic Variables declaration
        System.out.println("Enter the value of a..");
        a=sc.nextDouble();   //Quadratic Variables Initialization
        System.out.println("Enter the value of b..");
        b=sc.nextDouble();    //Quadratic Variables Initialization
        System.out.println("Enter the value of c..");
        c=sc.nextDouble();   //Quadratic Variables Initialization
        
        double d=(b*b)-(4*a*c);    //Find the determinant
        double D= Math.sqrt(d);
        double r=2*a;
        
        //Check for Roots
        if(D>0)
        {
            System.out.println("Roots are real and unequal");
            double root1=(D-b)/r;
            double root2=(-D-b)/r;
            System.out.println("Roots are..");
            System.out.println(root1);
            System.out.println(root2);
        }
        else if(D==0)
        {
            System.out.println("The roots of the quadratic equation are real and equal.");
            double root=(-b)/r;
            System.out.println("Root is "+root);
        }
        else
        {
            System.out.println("The roots of the quadratic equation are complex and different");
            System.out.println("Roots are ");
            System.out.println((-b/r)+" +i" + D);
            System.out.println((-b/r)+" -i" + D);
        }
     }
}


Entrez la valeur de a.. 15
Entrez la valeur de b.. 68
Entrez la valeur de c.. 3
Les racines sont réelles et inégales
Les racines sont..
-0.044555558333472335
-4.488777774999861

Programme 2 :Trouver l'équation quadratique

Dans cette méthode, les racines des équations quadratiques sont trouvées à l'aide de fonctions.

Algorithme

  1. Démarrer
  2. Déclarez les variables a,b,c.
  3. Initialiser les variables a,b,c.
  4. Appelez une fonction pour calculer les racines de l'équation quadratique.
  5. Vérifiez si les racines sont possibles ou non en utilisant la condition a==0.
  6. Calculez le discriminant comme Discriminant=sqrt((b*b)-(4*a*c))
  7. Si discriminant.>0, alors les racines sont réelles et inégales.
  8. Calculez les racines comme ( -b+ discriminant ) /(2 *a) et ( -b - discriminant ) /(2 *a).
  9. Si discriminant=0, alors les racines sont réelles et égales.
  10. Calculez les racines comme (-b + Discriminant) /( 2*a)
  11. Si discriminant>0, alors les racines sont complexes et différentes.
  12. Calculez les racines comme (-b/(2*a)) + iD et (-b/(2*a)) - iD
  13. Afficher les racines.
  14. Arrêter

Vous trouverez ci-dessous le code correspondant.

Dans cet exemple, nous utiliserons des méthodes pour trouver les racines des équations quadratiques. Dans un premier temps, les coefficients des équations quadratiques sont déclarés et initialisés. Et puis une fonction est appelée pour trouver les racines de l'équation quadratique.

//Java Program to find the roots of quadratic equation using Functions
import java.util.Scanner;
import static java.lang.Math.*;

public class QuadraticEquation
{
     public static void main(String []args)
     {
        Scanner sc=new Scanner(System.in);
        int a,b,c;    //Quadratic Variables Declaration
        System.out.println("Enter the value of a..");
        a=sc.nextInt();   //Quadratic Variables Initialization
        System.out.println("Enter the value of b..");
        b=sc.nextInt();    //Quadratic Variables Initialization
        System.out.println("Enter the value of c..");
        c=sc.nextInt();;   //Quadratic Variables Initialization
         quadraticRoots(a,b,c);   //Function Call
     
     }

     static void quadraticRoots(int a,int b,int c)
     {
        //Check whether roots are possible or not
        if (a == 0)   
        {  
           System.out.println("The value of a cannot be 0.");  
           return;  
        }  
       //calculating discriminant (d)  
       int d = b * b - 4 * a * c;  
       double D = sqrt(abs(d));  
       if (d > 0)   
       {  
          System.out.println("The roots of the equation are real and different. \n");  
          System.out.println((double)(-b + D) / (2 * a) + "\n"+ (double)(-b - D) / (2 * a));  
       }  
       else if (d == 0)   
       {  
          System.out.println("The roots of the equation are real and same. \n");  
          System.out.println(-(double)b / (2 * a) + "\n"+ -(double)b / (2 * a));  
       }  
       // executes if d < 0  
       else   
       {  
          System.out.println("The roots of the equation are complex and different. \n");  
          System.out.println(-(double)b / (2 * a) + " + i"+ D + "\n"+ -(double)b / (2 * a)+ " - i" + D);  
        }   
     }
}


Entrez la valeur de a.. 7
Entrez la valeur de b.. 7
Entrez la valeur de c.. 7
Les racines de l'équation sont complexes et différentes.

-0.5 + i12.12435565298214
-0.5 - i12.12435565298214


Balise Java