bonjour
j'ai stocker des notes dans une ArrayList et j'arrive pas a faire la moyenne de ces notes.
merci d'avance
Version imprimable
bonjour
j'ai stocker des notes dans une ArrayList et j'arrive pas a faire la moyenne de ces notes.
merci d'avance
Hello,
Code:
1
2
3
4
5
6
7
8
9
10
11 List<Double> list = new ArrayList<Double>(); list.add(12.5); list.add(8.0); list.add(17.0); list.add(2.0); double total = 0; for (Double note : list) { total += note; } double moyenne = total / list.size(); System.out.println(moyenne);
bonjour,
quel est ton code?
Tu dois faire une boucle for sur tous les élements de ta liste ou tu ajoutes chaque valeur.
Puis a la fin tu divises ce résultat par la longueur de ta liste.
Bonjour,
Code:
1
2
3
4
5
6
7
8
9
10 List<Double> notes; // la liste de notes Double somme = 0; for(Double note: notes) { somme = somme + note: } Double moyenne = somme / notes.size();
merci pour votre aide ,voila mon code:
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38 import java.util.ArrayList; import java.util.Scanner; public class exemple1 { public static void main(String[] args) { // TODO Auto-generated method stub Scanner sc = new Scanner(System.in); ArrayList al = new ArrayList(); ArrayList al2 = new ArrayList(); char reponse = 'O'; while (reponse == 'O') { System.out.println("Veuillez saisir le nom d'eleve "); al.add(sc.nextLine()); System.out.println("Veuillez saisir sa note "); al2.add(sc.nextLine()); System.out.println("Voulez-vous réessayer ?(O/N)"); reponse =sc.nextLine().charAt(0); } for(int i = 0; i < al.size(); i++) { System.out.println("la note de " + al.get(i) + " est " +al2.get(i)); } }
A le bon vieux temps des logiciels shell interactif, du dialoque avec le programme, il n'y a que çà de vrai
Tu n'as plus qu'a ajouter l'un des codes précédent dans ta boucle for et afficher le résultat après sans oublier de convertir les String de ta liste en Double
j'ai modifie mais eclipe n'accepte pas ce code somme= somme + note.get(i);
Code:
1
2
3
4
5
6 for(int i = 0; i < nom.size(); i++) { System.out.println("la note de " + nom.get(i) + " est " +note.get(i)); somme= somme + note.get(i); }
Adapte le code fourni à tes variables!
La liste nom se nomme al et la liste note se nomme al2 chez toi!
De plus, comme te la dit michel, tu dois convertir les chaînes de caractères (String) en double pour pouvoir les ajouter à ta somme, qui est de type double.
voila mon nouveau code
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45 import java.util.ArrayList; import java.util.Scanner; import javax.swing.JSpinner.ListEditor; public class exemple1 { public static void main(String[] args) { // TODO Auto-generated method stub Scanner sc = new Scanner(System.in); ArrayList nom = new ArrayList(); ArrayList note = new ArrayList(); double somme=0; double moyenne=0; char reponse = 'O'; while (reponse == 'O') { System.out.println("Veuillez saisir le nom d'eleve "); nom.add(sc.nextLine()); System.out.println("Veuillez saisir sa note "); note.add(sc.nextLine()); System.out.println("Voulez-vous réessayer ?(O/N)"); reponse =sc.nextLine().charAt(0); } for(int i = 0; i < nom.size(); i++) { System.out.println("la note de " + nom.get(i) + " est " +note.get(i)); somme= somme + note.get(i); } } }
Utilise les balise code mise à ta disposition sur le forum stp, comme ceci:
Il manque toujours la conversion. Test ton programme et essaie de régler les problèmes un peu tout seul, lit les messages d'erreurs.Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35 import java.util.ArrayList; import java.util.Scanner; import javax.swing.JSpinner.ListEditor; public class exemple1 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); ArrayList nom = new ArrayList(); ArrayList note = new ArrayList(); double somme=0; double moyenne=0; char reponse = 'O'; while (reponse == 'O') { System.out.println("Veuillez saisir le nom d'eleve "); nom.add(sc.nextLine()); System.out.println("Veuillez saisir sa note "); note.add(sc.nextLine()); System.out.println("Voulez-vous réessayer ?(O/N)"); reponse =sc.nextLine().charAt(0); } for(int i = 0; i < nom.size(); i++) { System.out.println("la note de " + nom.get(i) + " est " +note.get(i)); somme= somme + note.get(i); } }
Un petit tour sur les différents tutoriels disponible sur le site ne te ferait pas de mal.