Bonjour, je suis en train de créer un programme concernant des stats et j'ai déjà posté un sujet le concernant. J'ai créé cet autre topic car là il s'agit d'un problème bien spécifique donc qui pour une certaine valeur par exemple i > 0 j'ai un calcul effectué, par exemple c = a/b.
Ce qui nous donne:
int c = 0
if (i < 0){
c = a/b
}
else (i < 1){
}
Par contre pour une valeur i < 1 le calcul ne doit pas être fait, car division par zéro impossible.
Le problème c'est que je ne sais pas trop quoi mettre dans le else pour empêcher que le calcul soit exécuté.
Merci par avance pour votre aide.
tu peux tester si b est nul ou pas dans le if (i < 0) et ne tester (i<1) que si la condition est respectée
et puis java a aussi une instruction try catch pour capturer ce genre de chose.
Merci pour ta réponse je vais aller voir pour la fonction try catch
Sinon je me suis trompé dans mon code
voici le bon:
int c = 0
if (i > 0){
c = a/b
}
else (i < 1){
}
Et ça, ça ne te va pas ?
if (i > 0){
if (b <> 0){
c = a/b
}
else { // écrire calcul impossible car b est nul
}
}
if (i < 1 & b <> 0){
}
Quelque chose m'échappe.
if (i > 0){
if (b <> 0){
c = a/b
}
...
}
Ne rime pas à grand chose.
Si on passe le test du if(i > 0), i est forcément différent de 0, alors le if (b <> 0) qui suit ne sert strictement à rien.
Non ?
je ne comprends pas ta remarque, quel rapport entre i ; b et c ? si i est différent de 0, on ne peut rien dire sur a et b à priori ?
Juste une question, mon programme que j'utilise pour écrire en java n'accepte pas "<>", par quoi je pourrai le remplacer?
ReBonjour, voilà j'ai fait ce petit programme et j'ai appliqué les conseils de Glapion.
Par contre mon programme ne fonctionne pas.
Pourriez-vous m'aider à trouvé une solution?
package test;
import java.util.Scanner;
public class moyenne {
static Scanner divid = new Scanner (System.in);
public static void main(String[] args){
int a = 0;
int b = 0;
if (a > 0){
if (b != 0){
int division1 = (a/b);
System.out.println("veuiller inserer le numérateur");
a = divid.nextLine();
System.out.println("veuiller inserer le dénominateur");
b = divid.nextLine();
System.out.println("resultat: "+division1);
}
}
}
}
je ne comprends pas, tu fais division1 = (a/b) si b est différent de 0 mais juste avant tu viens d'écrire que b=0 et a=0
Vous devez être membre accéder à ce service...
Pas encore inscrit ?
1 compte par personne, multi-compte interdit !
Ou identifiez-vous :