Les membres ayant 30 points peuvent parler sur les canaux annonces, projets et hs du chat.
La shoutbox n'est pas chargée par défaut pour des raisons de performances. Cliquez pour charger.

Forum Casio - Autres questions


Index du Forum » Autres questions » Erreur syntaxe - Lancer de dé
Piebar Hors ligne Membre Points: 3 Défis: 0 Message

Erreur syntaxe - Lancer de dé

Posté le 18/09/2017 07:56

Bonjour, j'ai écrit mon premier code, un calculateur de lancer de dé. Je voudrais qu'il me dise le nombre de fois que j'ai fait 1, 2, 3, 4 ,5 et 6 mais il me manque sûrement un code qui m'est inconnu, voilà mon programme :

"Nombre de lancer"
?→N
0→K
0→S
0→T
0→U
0→V
0→W
0→X
For 1→I To N
Int(6xRan# +1)→K
If K=1
Then S+1→S
If K=2
Then T+1=T
If K=3
Then U+1→U
If K=4
Then V+1→V
If K=5
Then W+1→W
If K=6
Then X+1→X
IfEnd
Next
"Nombre de 1:"
S◢
Next
"Nombre de 2:"
T◢
Next
"Nombre de 3:"
U◢
Next
"Nombre de 4:"
V◢
Next
"Nombre de 5:"
W◢
Next
"Nombre de 6:"
X◢


Merci d'avance pour l'aide

PS Modération : Un petit effort sur le français s'il te plaît, ça donne plus envie de lire ton message et de t'aider par la suite. De plus, n'hésite pas à utiliser la balise code disponible dans les boutons BBCode au-dessus du message lorsque tu partages directement du code, sinon, utilise les pièces-jointes


Zezombye Hors ligne Rédacteur Points: 1756 Défis: 13 Message

Citer : Posté le 18/09/2017 08:42 | #


L'erreur se trouve dans les "next", cette instruction s'utilise uniquement avec le for.
(ah, et c'est "syntaxe")
Divers jeux : Puissance 4 - Chariot Wars - Sokoban
Ecrivez vos programmes basic sur PC avec BIDE
Lephenixnoir En ligne Administrateur Points: 24145 Défis: 170 Message

Citer : Posté le 18/09/2017 17:15 | #


Ce n'est pas tout. Pour tes conditions tu dois aussi fermer tous les If que tu as ouverts, comme ceci (tout ce qui après les # est du commentaire et ne fait pas partie du code) :

If K=1
Then S+1→S
IfEnd # pour clore If K=1
If K=2
Then T+1→T
IfEnd # pour clore If K=2
# etc

Alternativement, et je pense que c'est ce que tu voulais faire, tu peux mettre des If/Else en cascade. Cela ne t'empêche pas d'avoir à tous les fermer :

If K=1
Then S+1→S
Else If K= 2
Then T+1→T
# etc
IfEnd # pour clore If K=2 qui est dans le Else de If K=1
IfEnd # pour clore If K=1

J'ai ajouté des commentaires pour bien montrer que cette fois les If ne sont pas les uns à la suite des autres mais bien les uns dans les autres.

Finalement, tu peux utiliser la condition rapide ⇒ (Shift + VARS + F3 [JMP] + F3), qui prend la forme condition ⇒ instruction et qui n'exécute l'instruction que si la condition est remplie. Le programme est alors simplifié :

K=1⇒S+1→S
K=2⇒T+1→T
# etc

Mon graphe (24 Mars): (gint#27 ; (Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; ...) || (shoutbox v5 ; v5)
Totoyo Hors ligne Membre d'honneur Points: 16093 Défis: 102 Message

Citer : Posté le 18/09/2017 18:03 | #


Code optimisé avec les listes. Je suis sur un téléphone, donc pas d'explications du code
6->Dim List 1
For 1->A To 6
1+Int(6Ran# -K
1+List 1[K->List 1[K
Next
"Nombre de 1 :"
List 1[1◢
"Nombre de 2 :"
List 1[2◢
...
Etc
...

Piebar Hors ligne Membre Points: 3 Défis: 0 Message

Citer : Posté le 19/09/2017 04:04 | #


Très bien, je vais essayer, merci à tous

LienAjouter une imageAjouter une vidéoAjouter un lien vers un profilAjouter du codeCiterAjouter un spoiler(texte affichable/masquable par un clic)Ajouter une barre de progressionItaliqueGrasSoulignéAfficher du texte barréCentréJustifiéPlus petitPlus grandPlus de smileys !
Cliquez pour épingler Cliquez pour détacher Cliquez pour fermer
Alignement de l'image: Redimensionnement de l'image (en pixel):
Afficher la liste des membres
:bow: :cool: :good: :love: ^^
:omg: :fusil: :aie: :argh: :mdr:
:boulet2: :thx: :champ: :whistle: :bounce:
valider
 :)  ;)  :D  :p
 :lol:  8)  :(  :@
 0_0  :oops:  :grr:  :E
 :O  :sry:  :mmm:  :waza:
 :'(  :here:  ^^  >:)

Σ π θ ± α β γ δ Δ σ λ
Veuillez donner la réponse en chiffre
Vous devez activer le Javascript dans votre navigateur pour pouvoir valider ce formulaire.

Si vous n'avez pas volontairement désactivé cette fonctionnalité de votre navigateur, il s'agit probablement d'un bug : contactez l'équipe de Planète Casio.

Planète Casio v4.3 © créé par Neuronix et Muelsaco 2004 - 2024 | Il y a 96 connectés | Nous contacter | Qui sommes-nous ? | Licences et remerciements

Planète Casio est un site communautaire non affilié à Casio. Toute reproduction de Planète Casio, même partielle, est interdite.
Les programmes et autres publications présentes sur Planète Casio restent la propriété de leurs auteurs et peuvent être soumis à des licences ou copyrights.
CASIO est une marque déposée par CASIO Computer Co., Ltd