Bonjours a tous
J apprend actuellement le java en autodidacte, un ami qui prend des cours de C ma donné ses exercices que j essaye d appliquer en java mais je rencontre 2 disfonctionnement récurrent que je n arrive pas a régler....
Voici l'exercice :
Numéro 3 ( 13 points ) :
Définition: À l’Université de Montréal, les notes des étudiants sont habituellement calculées de façon numérique, mais traduites en note littérale (A+, C-, D, …) pour la diffusion finale. Typiquement, on utilise les intervalles suivants:
si la note numérique est dans alors la note littérale est:
l’intervalle [90, 100] A+
l’intervalle [85, 90[ (90 exclu) A
l’intervalle [80, 85[ (85 exclu) A-
l’intervalle [77, 80[ (80 exclu) B+
l’intervalle [73, 77[ (77 exclu) B
l’intervalle [70, 73[ (73 exclu) B-
l’intervalle [65, 70[ (70 exclu) C+
l’intervalle [60, 65[ (65 exclu) C
l’intervalle [57, 60[ (60 exclu) C-
l’intervalle [54, 57[ (57 exclu) D+
l’intervalle [50, 54[ (54 exclu) D
l’intervalle [35, 50[ (50 exclu) E
l’intervalle [0, 35[ (35 exclu) F
Spécification:
Écrivez un programme qui:
1. lit les 3 notes suivantes: intra, final et tps (vous n’êtes pas tenu de valider ces notes, on suppose que les notes tapées sont entre 0 et 100).
2. calcule la note globale
3. détermine la note littérale
4. affiche les notes
Le programme fonctionne pour plusieurs étudiants tant que l’usager décide de continuer.
On calcule et affiche la moyenne de la note globale du cours.
Critères de correction du numéro 3 : (total de 15 points) :
-Déclaration d’au moins de 3 constantes (parmi autres): 1 point
-Saisie et calcul des notes, on affiche ces notes : 3 points
-Détermine et affiche la note littérale avec un if imbriqué convenable : 5 points
-Présentation du programme et des résultats, commentaires : 2 points
-Boucle de répétition et bon fonctionnement (4 points de départ)
Exemple de données pour le numéro 3 :
intra final tps
89.00 82.60 94.60
40.20 25.90 99.50
38.20 56.90 32.60
78.50 92.75 96.50
Voici mon code a l'heure actuel :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89 import java.util.Scanner; public class TP1Exo3 { private static Scanner clavier = new Scanner(System.in); public static void main (String[] args) { double noteIntra; double noteFinal; double noteTps; String noteLitteral; String poursuivre; do{ System.out.println("Entrer votre note intra : "); noteIntra = clavier.nextDouble(); System.out.println("Entrer votre note final : "); noteFinal = clavier.nextDouble(); System.out.println("Entrer votre note tps : "); noteTps = clavier.nextDouble(); double noteGlobal = ((noteIntra+noteFinal+noteTps)/3); System.out.println(" Votre note global est : "+ noteGlobal); if (noteGlobal>85){ if (noteGlobal>89){ noteLitteral = "A+"; System.out.println("Votre note littéral est : "+noteLitteral); }else{ noteLitteral = "A"; System.out.println("Votre note littéral est : "+noteLitteral);} } if (noteGlobal>76){ if (noteGlobal>79){ noteLitteral = "A-"; System.out.println("Votre note littéral est : "+noteLitteral); }else{ noteLitteral ="B+"; System.out.println("Votre note littéral est : "+noteLitteral); } } if (noteGlobal>69){ if (noteGlobal>72){ noteLitteral = "B"; System.out.println("Votre note littéral est : "+noteLitteral); }else{ noteLitteral="B-"; System.out.println("Votre note littéral est : "+noteLitteral); } } if (noteGlobal>59){ if (noteGlobal>64){ noteLitteral="C+"; System.out.println("Votre note littéral est : "+noteLitteral); }else{ noteLitteral="C"; System.out.println("Votre note littéral est : "+noteLitteral); } } if (noteGlobal>53){ if(noteGlobal>56){ noteLitteral="C-"; System.out.println("Votre note littéral est : "+noteLitteral); }else{ noteLitteral="D+"; System.out.println("Votre note littéral est : "+noteLitteral); } } if (noteGlobal>34){ if(noteGlobal>49){ noteLitteral="D"; System.out.println("Votre note littéral est : "+noteLitteral); }else{ noteLitteral="E"; System.out.println("Votre note littéral est : "+noteLitteral); } } if (noteGlobal<35){ noteLitteral="F"; System.out.println("Votre note littéral est : "+noteLitteral); } System.out.println("Souhaitez vous poursuivre pour un nouvel étudiant? "+"(oui ou non)"); poursuivre=clavier.nextLine(); poursuivre=poursuivre.intern(); }while (poursuivre != "non"); } }
Voici l affichage du code :
----------------------------------------------------------------
Entrer votre note intra :
90
Entrer votre note final :
98
Entrer votre note tps :
94
Votre note global est : 94.0
Votre note littéral est : A+
Votre note littéral est : A-
Votre note littéral est : B
Votre note littéral est : C+
Votre note littéral est : C-
Votre note littéral est : D
Souhaitez vous poursuivre pour un nouvel étudiant? (oui ou non)
Entrer votre note intra :
----------------------------------------------------------
1er probleme a premiere vu mes if imbriqué et 2eme probleme ma boucle de répétition
Je ne sais plus quoi faire si quelqu un peut me guider ca serait super....
Merci d avance et bonne journée / soirée
Partager