Bonjour à tous !
J'ai codé un petit jeu de pierre feuille ciseaux sur algobox et j'aimerais avoir quelques avis sur ma création pour l'améliorer si possible
J'ai essayé de mettre un lien avec dropbox je ne sais pas si vous pouvez l'ouvrir je suis un peu débutant en la matière :p
https://*********************
Merci d'avance de vos réponses
on peut l'ouvrir mais l'algorithme est vide. tu devrais copier/coller le texte en mode éditeur de texte, ça serait plus pratique.
Bonjour Galpion,
Voila mon algorithme
Jeu feuille, papier, ciseaux
Jeu de pierre-feuille-ciseaux comprenant :
- un mot de passe
- un controle parental
- un système de manches
- un système de notation
1 VARIABLES
2 choixU EST_DU_TYPE CHAINE
3 ChoixO EST_DU_TYPE CHAINE
4 PointsU EST_DU_TYPE NOMBRE
5 PointsO EST_DU_TYPE NOMBRE
6 Age EST_DU_TYPE NOMBRE
7 EssaisRestants EST_DU_TYPE NOMBRE
8 Manche EST_DU_TYPE NOMBRE
9 NoteU EST_DU_TYPE NOMBRE
10 ReponseU EST_DU_TYPE CHAINE
11 Motdepasse EST_DU_TYPE CHAINE
12 NomU EST_DU_TYPE CHAINE
13 DEBUT_ALGORITHME
14 //début mot de passe
15 EssaisRestants PREND_LA_VALEUR 5
16 AFFICHER "Bonjour, veuillez entrer votre mot de passe"
17 LIRE Motdepasse
18 TANT_QUE (Motdepasse !="bonjour44") FAIRE
19 DEBUT_TANT_QUE
20 AFFICHER "Mot de passe incorrect !"
21 EssaisRestants PREND_LA_VALEUR EssaisRestants-1
22 AFFICHER "Essais restants : "
23 AFFICHER EssaisRestants
24 TANT_QUE (EssaisRestants==0) FAIRE
25 DEBUT_TANT_QUE
26 AFFICHER "Vous avez entrer trop de fois un mot de passe incorrect. Le jeu est bloqué !"
27 PAUSE
28 FIN_TANT_QUE
29 LIRE Motdepasse
30 FIN_TANT_QUE
31 //début nom
32 AFFICHER "Comment vous appellez-vous ?"
33 LIRE NomU
34 AFFICHER "Vous avez un très joli nom, "
35 AFFICHER NomU
36 AFFICHER " !"
37 //début contrôle parental
38 AFFICHER "Quel âge avez-vous ?"
39 LIRE Age
40 TANT_QUE (Age<10) FAIRE
41 DEBUT_TANT_QUE
42 AFFICHER "Il faut avoir au minimum 10 ans pour jouer à ce jeu !"
43 PAUSE
44 FIN_TANT_QUE
45 //début jeu
46 AFFICHER "Combien de manches voulez-vous faire, "
47 AFFICHER NomU
48 AFFICHER " ?"
49 LIRE Manche
50 TANT_QUE (Manche !=0) FAIRE
51 DEBUT_TANT_QUE
52 ChoixO PREND_LA_VALEUR random()
53 SI (ChoixO<0.34) ALORS
54 DEBUT_SI
55 ChoixO PREND_LA_VALEUR 1
56 FIN_SI
57 SI (ChoixO>=0.34 ET ChoixO<=0.67) ALORS
58 DEBUT_SI
59 ChoixO PREND_LA_VALEUR 2
60 FIN_SI
61 SI (ChoixO>0.67 ET ChoixO<1) ALORS
62 DEBUT_SI
63 ChoixO PREND_LA_VALEUR 3
64 FIN_SI
65 AFFICHER "Choississez-vous 1) pierre, 2) feuille ou 3) ciseaux ?"
66 LIRE choixU
67 TANT_QUE (choixU !=1 ET choixU !=2 ET choixU !=3) FAIRE
68 DEBUT_TANT_QUE
69 AFFICHER "Votre choix n'est pas compris entre 1 et 3, recommencez svp"
70 LIRE choixU
71 FIN_TANT_QUE
72 AFFICHER "L'ordinateur a choisit : "
73 AFFICHER ChoixO
74 AFFICHER "Vous avez "
75 SI (choixU==1 ET ChoixO==1) ALORS
76 DEBUT_SI
77 AFFICHER "égalité"
78 FIN_SI
79 SI (choixU==1 ET ChoixO==2) ALORS
80 DEBUT_SI
81 AFFICHER "perdu"
82 PointsO PREND_LA_VALEUR PointsO+1
83 FIN_SI
84 SI (choixU==1 ET ChoixO==3) ALORS
85 DEBUT_SI
86 AFFICHER "gagné"
87 PointsU PREND_LA_VALEUR PointsU+1
88 FIN_SI
89 SI (choixU==2 ET ChoixO==2) ALORS
90 DEBUT_SI
91 AFFICHER "égalité"
92 FIN_SI
93 SI (choixU==2 ET ChoixO==1) ALORS
94 DEBUT_SI
95 AFFICHER "gagné"
96 PointsU PREND_LA_VALEUR PointsU+1
97 FIN_SI
98 SI (choixU==2 ET ChoixO==3) ALORS
99 DEBUT_SI
100 AFFICHER "perdu"
101 PointsO PREND_LA_VALEUR PointsO+1
102 FIN_SI
103 SI (choixU==3 ET ChoixO==3) ALORS
104 DEBUT_SI
105 AFFICHER "égalité"
106 FIN_SI
107 SI (choixU==3 ET ChoixO==1) ALORS
108 DEBUT_SI
109 AFFICHER "perdu"
110 PointsO PREND_LA_VALEUR PointsO+1
111 FIN_SI
112 SI (choixU==3 ET ChoixO==2) ALORS
113 DEBUT_SI
114 AFFICHER "gagné"
115 PointsU PREND_LA_VALEUR PointsU+1
116 FIN_SI
117 AFFICHER " la manche !"
118 AFFICHER "- Points du joueur : "
119 AFFICHER PointsU
120 AFFICHER "- Points de l'ordinateur : "
121 AFFICHER PointsO
122 Manche PREND_LA_VALEUR Manche-1
123 SI (Manche !=0) ALORS
124 DEBUT_SI
125 SI (PointsU<PointsO) ALORS
126 DEBUT_SI
127 AFFICHER "L'ordinateur est en tête !"
128 FIN_SI
129 SI (PointsU>PointsO) ALORS
130 DEBUT_SI
131 AFFICHER "Vous êtes en tête !"
132 FIN_SI
133 SI (PointsU==PointsO) ALORS
134 DEBUT_SI
135 AFFICHER "Vous avez le même nombre de points !"
136 FIN_SI
137 FIN_SI
138 AFFICHER "(Manches restantes : "
139 AFFICHER Manche
140 AFFICHER ")"
141 AFFICHER " "
142 SI (Manche==0) ALORS
143 DEBUT_SI
144 SI (PointsU<PointsO) ALORS
145 DEBUT_SI
146 AFFICHER "L'ordinateur a gagné la partie !"
147 FIN_SI
148 SI (PointsU>PointsO) ALORS
149 DEBUT_SI
150 AFFICHER "Vous avez gagné la partie !"
151 FIN_SI
152 SI (PointsU==PointsO) ALORS
153 DEBUT_SI
154 AFFICHER "Il y a égalité ! Personne n'a gagné !"
155 FIN_SI
156 FIN_SI
157 FIN_TANT_QUE
158 //début notation
159 PAUSE
160 AFFICHER " "
161 AFFICHER NomU
162 AFFICHER ", voulez-vous nous aider à améliorer ce jeu en le notant sur 10 ?"
163 LIRE ReponseU
164 TANT_QUE (ReponseU !="oui" ET ReponseU !="non") FAIRE
165 DEBUT_TANT_QUE
166 AFFICHER "Nous n'avons pas compris votre demande ! Répondez par oui ou non svp"
167 LIRE ReponseU
168 FIN_TANT_QUE
169 SI (ReponseU=="oui") ALORS
170 DEBUT_SI
171 LIRE NoteU
172 SI (NoteU<=4) ALORS
173 DEBUT_SI
174 AFFICHER "Nous allons redoubler d'efforts pour vous satisfaire, "
175 AFFICHER NomU
176 AFFICHER " !"
177 FIN_SI
178 SI (NoteU<4 ET NoteU>=7) ALORS
179 DEBUT_SI
180 AFFICHER "Merci !"
181 FIN_SI
182 SI (NoteU>7 ET NoteU<=10) ALORS
183 DEBUT_SI
184 AFFICHER "Merci beaucoup de votre soutient !"
185 FIN_SI
186 FIN_SI
187 SI (ReponseU=="non" ) ALORS
188 DEBUT_SI
189 AFFICHER "Ce n'est pas grave ..."
190 FIN_SI
191 FIN_ALGORITHME
Ecoute, ça a l'air très bien, bravo
les seules suggestions d'amélioration qui me viennent sont :
- tu as une instruction ALGOBOX_ALEA_ENT(1,3) qui permet directement de choisir un chiffre aléatoire parmi 1;2 ou 3, ça va t'économiser tes instructions SI (ChoixO<0.34) ALORS
- tu as vraiment beaucoup d'instructions pour tester les résultats, tu pourrais compacter un peu.
exemple
SI ((choixU==1 ET ChoixO==3) OU (choixU==2 ET ChoixO==1) OU (choixU==3 ET ChoixO==2)) ALORS
DEBUT_SI
AFFICHER "gagné"
.....
- pense que l'instruction AFFICHER* fait aller à la ligne, ici toutes tes instructions afficher vont écrire sur la même ligne. c'est utile mais il faut parfois aller à la ligne.
Merci beaucoup de tes conseils
Je vais le compacter comme tu m'a dit
Par contre j'ai mis beaucoup de retour a la ligne, c'est bizarre qu'ils n'ont pas été réécrit
La console me donne ceci
***Algorithme lancé***
Bonjour, veuillez entrer votre mot de passe
Entrer Motdepasse : bonjour44
Comment vous appellez-vous ?
Entrer NomU : ****
Vous avez un très joli nom, **** !
Quel âge avez-vous ?
Entrer Age : 16
Combien de manches voulez-vous faire, **** ?
Entrer Manche : 12
Choississez-vous 1) pierre, 2) feuille ou 3) ciseaux ?
Entrer choixU : 1
L'ordinateur a choisit : 2
Vous avez perdu la manche !
- Points du joueur : 0
- Points de l'ordinateur : 1
L'ordinateur est en tête !
(Manches restantes : 11)
Choississez-vous 1) pierre, 2) feuille ou 3) ciseaux ?
Entrer choixU :
Vous devez être membre accéder à ce service...
Pas encore inscrit ?
1 compte par personne, multi-compte interdit !
Ou identifiez-vous :