Somme suite en java
Résolu
Bonjour,
ennocé:
écrivez en Java le programme qui calcule et affiche la moyenne d'une suite de nombres décimaux positifs ou nuls, dont la fin est indiquée par un nombre négatif. Exemple d'exécution (ce qui a été tapé par l'utilisateur est en gras et souligné) :
Donner les nombres (terminer par -1): 14 8,5
10
12 5,5 -1
moyenne: 10,0
Mon script est :
ennocé:
écrivez en Java le programme qui calcule et affiche la moyenne d'une suite de nombres décimaux positifs ou nuls, dont la fin est indiquée par un nombre négatif. Exemple d'exécution (ce qui a été tapé par l'utilisateur est en gras et souligné) :
Donner les nombres (terminer par -1): 14 8,5
10
12 5,5 -1
moyenne: 10,0
Mon script est :
package testproject;
import java.util.Scanner;
public class scaner {
public static void main (String args[]){
Scanner entree = new Scanner(System.in);
int c=0,i=0,somme=0;
String s="z";
while (i>=0){
if (c % 2==0 ) {i = entree.nextInt();} else {s = entree.nextLine();}
System.out.println("iiiii "+i);
System.out.println("sssss "+s);
c= c +1;
somme=somme+i;
}
}
}
}
mais
2 réponses
-
ModérateurÀ quoi te sert ton c ? En faisant comme ça tu vas compter deux fois chaque i...
Tu peux directement faire :
while (i>=0) { i = entree.nextInt(); s = entree.nextLine(); System.out.println("i="+i); System.out.println("s="+s); somme=somme+i; } -
c'est fait voila la solution:
package testproject; import java.util.Scanner; public class scaner { public static void main (String args[]){ Scanner entree = new Scanner(System.in); float i=0,somme=0; int c=-1; while (i>=0){ i = entree.nextFloat(); c= c +1; if (i>=0){somme=somme+i;} } System.out.println("La somme est "+somme); if (somme!=0){float moy=somme/c; System.out.println("la Moyenne est "+moy);} else {System.out.println("La Moyenne est zéro");} } }