Partage
  • Partager sur Facebook
  • Partager sur Twitter

j'ai un problème avec équation ax²+bx+c=0

    29 avril 2016 à 12:04:15

    bonjour

    En écrivant mon programme, je ne sais pas comment écrire

    la partie det<0; quelqu'un peut m'aider svp

    la formule est suivant:

    x1 = (-b-√Δ)/2a    et     x2= (-b+√Δ)/2a


    import java.util.Scanner;
    public class Equation1 
    {
    	public static void main(String[] args) 
    	{
    		  Scanner sc=new Scanner(System.in);
    		  System.out.print("Entrez le coefficient a:");
    		  double a=sc.nextDouble();
    		  System.out.print("Entrez le coefficient b:");
    		  double b=sc.nextDouble();
    		  System.out.print("Entrez le coefficient c:");
    		  double c=sc.nextDouble();	
    		  
    		  double det,x1,x2,re,im;//re-->partie réel et im-->partie imaginaire
    		  //cas a,b et c=0;
    		  if(a==0)
    		  {
    			  if(b==0)
    			  {
    				  if(c==0)
    				  {
    					System.out.println("Il y a une infinité de solutions");  
    				  }
    				  else
    				  {
    					  System.out.println("L'équation n'admet pas de solutions");
    				  }
    			  }
    			  else
    			  {
    				  x1=-c/b;
    				  System.out.println("L'équation admet pour solution: "+x1);
    			  }
    		  }
    		  //cas a non nul
    		  else
    		  {
    			  det=((b*b)-(4*a*c));//calcul du déterminant
    			  //cas réel:det>0
    			  if(det>0)
    			  {
    				  //calcul des solutions réeles
    				  x1=(-b+Math.sqrt(det))/(2*a);
    				  x2=(-b-Math.sqrt(det))/(2*a);
    				  System.out.println("Les 2 solutions réeles sont:");
    				  System.out.println("x1= "+x1);
    				  System.out.println("x2= "+x2);
    			  }
    			  //cas solution double det=0
    			  if(det==0)
    			  {
    				  x1=-b/(2*a);
    				  System.out.println("L'équation a une solution : "+x1);
    			  }
    			  //cas complexe:det
    			  if(det<0)
    			  {
    				  //re=(-b/(2*a));//calcul de la partie réel du résultat
    				  //im=(Math.sqrt(-det))/(2*a);//calcul de la partie imaginaire du résultat
    				  double i=0;
    				  /*re=(-b/(2*a));
    				  im=Math.sqrt(-det)/2*a;
    				  System.out.println("x1= "+re+"i");
    				  System.out.println("x2= "+im+"i");*/
    				  x1=(-b+Math.sqrt(-det)/2*a);
    				  x2=((-b-i*Math.sqrt(-det))/2*a);
    				  System.out.println("x1= "+x1+"i");
    				  System.out.println("x2= "+x2+"i");
    			  }   
    		  }
    	}
    }
    




    • Partager sur Facebook
    • Partager sur Twitter
      29 avril 2016 à 12:15:55

      Salut,

      Les solutions ne sont pas plutôt x1=(-b-ir)/(2a) et x2=(-b+ir)/(2a)?

      Avec r = sqrt(-det)

      Tu n'as plus qu'a construire un String avec les bonne choses

      Je vois aussi que tu a voulut faire partie réel et imaginaire séparée. Ça n'a pas marché ?

      • Partager sur Facebook
      • Partager sur Twitter
        29 avril 2016 à 12:39:31

        j'ai écrit ainsi

        double i = 0;
        				  x1=((-b-i*Math.sqrt(-det))/2*a);
        				  x2=((-b+i*Math.sqrt(-det))/2*a);

        avec a=1, b=2, c=5

        doit avoir un résultat :

        x1=-2+4i

        x2=-2-4i

        mais mon prg trouve un résultat comme ceci

        Entrez le coefficient a:1
        Entrez le coefficient b:2
        Entrez le coefficient c:5
        x1= -1.0i
        x2= -1.0i

        qui est bon?

        • Partager sur Facebook
        • Partager sur Twitter
          29 avril 2016 à 13:50:44

          Si tu dis que i = 0 et que tu fais un calcul avec ca ne va pas aller...
          • Partager sur Facebook
          • Partager sur Twitter
            29 avril 2016 à 15:02:11

                              double i=1;
                              double r=Math.sqrt(-det);
                              x1=((-b-i*r)/(2*a));
                              x2=((-b+i*r)/(2*a));
                              System.out.println("x1= "+x1+"i");
                              System.out.println("x2= "+x2+"i");

            maintenant output est:

            Entrez le coefficient a:1
            Entrez le coefficient b:2
            Entrez le coefficient c:5
            x1= -3.0i
            x2= 1.0i

            • Partager sur Facebook
            • Partager sur Twitter
              2 mai 2016 à 9:24:58

              Tu ne peux pas calculer avec une vraie valeur de i... C'est un complexe et tu ne peux pas (sans API) calculer tel quel !

              Ton resultat devrait etre reel + ima * i, a toi de calculer separemment reel et ima (C'est ce qui est le plus simple)

              • Partager sur Facebook
              • Partager sur Twitter
                19 juillet 2016 à 13:37:57

                bonjour

                maintenant je veux vérifier mon équation, est ce que mon calcul est juste ou pas; je m'explique

                en mettant la valeur du x dans le calcul

                exemple (x*x)+x-2=0

                mon équation est:

                x²+x-2=0

                x²+3x+2=0

                -x²+2x-3=0

                mais pour vérifier mon équation, je ne sais pas quel formule à utiliser

                veuillez m'aidez svp

                -
                Edité par domxaline 19 juillet 2016 à 13:47:11

                • Partager sur Facebook
                • Partager sur Twitter
                  23 juillet 2016 à 10:19:54

                  j'ai trouvé vérification pour mon calcul,pour le cas delta >0

                  ceci:

                  x²+x-6=0;

                  solution est x1=-3 et x2=2

                  (3)²+(-3)-6=0;

                  (2)²+2-6=0;

                  mais je ne trouve pas pour le cas =0

                  9x²+6x+1=0 ;

                  comment le vérifier svp


                  • Partager sur Facebook
                  • Partager sur Twitter
                    23 juillet 2016 à 12:42:15

                    Bonjour,

                    Si x1 et x2 sont solutions, alors l'équation ax^2 + bx + c = 0 peut s'écrire (x - x1)(x - x2) = 0.

                    Pour vérifier les solutions, tu peux développer cette équation et vérifier que les coefficients sont égaux (à un diviseur près).

                    Pour delta = 0 (1 solution), tu fais juste la même chose mais avec x2 = x1.

                    • Partager sur Facebook
                    • Partager sur Twitter

                    j'ai un problème avec équation ax²+bx+c=0

                    × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                    × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                    • Editeur
                    • Markdown