Algorithme " return plusieurs valeur"
Résolu
Jiko-java
Messages postés
189
Statut
Membre
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonjour, voilà j'essaie de codé un programme qui a pour objectif de trouver les solutions d'une équation du second degré , Cependant lorsque l’équation possède 2 racines je n'arrive pas a renvoyer les 2 valeurs Voici mon code :
Merci d'avance.
public class Delta{
public static java.util.Scanner scanner = new java.util.Scanner(System.in);
public static void main(String[]args){
System.out.println("Veuillez entré une valeur pour la variable a ");
int a = scanner.nextInt();
System.out.println("Veuillez entré une valeur pour la variable b ");
int b = scanner.nextInt();
System.out.println("Veuillez entré une valeur poour le terme indépendant (c)");
int c = scanner.nextInt();
System.out.println("Voici votre équation " + a +"x²" + "+" + b +"x" + "+" + c + " = 0");
double solution = calculDelta( a , b , c );
System.out.println("Voici la solition de votre équation " + solution);
}
public static double calculDelta( int a , int b , int c){
int delta = (b*b) - 4*a*c;
if(delta < 0)
System.out.println("Cette equation ne possède pas de solution");
else if( delta == 0 ){
System.out.println("Votre equation possède une solution");
double x = (-b)/a;
return x;
}
else{
System.out.println("cette équation possède 2 solution");
double racineDelta = Math.sqrt(delta);
double x1 = (-b + racineDelta)/2*a;
double x2 = (-b - racineDelta)/2*a;
return x1;
return x2;
}
}
}
Merci d'avance.
1 réponse
-
Bonjour,
Une fonction s'arrête au premier "return".
Une solution est de stocker le résultat dans un ARRAY ... et de faire un RETURN de cet array.
-
D'accord Merci n'étant pas encore a l'aise avec les tableaux , je ne sais pas comment l'utilisé mais j'ai trouver un moyen pour affiché mes racines , cependant un autre point n'est pas résolu pas exemple lorsque je prends l’équation suivante 4x²+4x+1 = 0 cette équation a une racine qui est -4/8 soit -1/2 . cependant je comprend pas pourquoi mon compilateur affiche 0.0 voici mon instruction:
if(delta == 0){
System.out.println("Cette equation possède une racine");
double x = -b/(2*a);
System.out.println("Voici la solution :" + x);
} -
-
-