Page 1 sur 1
Problème de syntaxe dans mon code source
Publié : dim. 13/févr./2011 14:03
par Nemesty
Bonjour à tous
Alors voilà mon code :
Code : Tout sélectionner
OpenConsole()
Repeat
PrintN("SkyzPunition V1")
PrintN("")
PrintN("")
PrintN("")
Print("Entrer au clavier la punition a recopier : ")
punitionEntrer$ = Input()
PrintN("")
Print("Entrer au clavier le nombre de fois que la punition doit etre recopier : ")
nombreDeFois$ = Input()
nombreDeFois = Val(nombreDeFois$)
PrintN("")
PrintN("")
PrintN("Vous devez recopier " + Str(nombreDeFois) + " fois la punition suivante : " + punitionEntrer$)
While reponse$ != "n" Or "N"
If reponse$ != "o" Or "O" Or "n" Or "N"
Print("Entrer soit o pour recommencer, soit n pour eteindre le programme : ")
reponse$ = Input()
PrintN("")
EndIf
Wend
Until reponse$ = "n" Or "N"
Le problème c'est que l'EDI me dit qu'il ya une erreur de syntaxe à la ligne 24 donc à la ligne du : While reponse$ != "n" Or "N"
Je pense que j'aurais le même problème avec le prochain If et arriver au Until aussi.
Pour vous situer je suis en train d'effectuer le tp suivant qui ce trouve sur le site du zero :
http://www.siteduzero.com/tutoriel-3-22 ... ition.html
Bien sûr je n'est pas encore fini de taper mon code source
Merci d'avance

Re: Problème de syntaxe dans mon code source
Publié : dim. 13/févr./2011 14:37
par SPH
Code : Tout sélectionner
OpenConsole()
Repeat
PrintN("SkyzPunition V1")
PrintN("")
PrintN("")
PrintN("")
Print("Entrer au clavier la punition a recopier : ")
punitionEntrer$ = Input()
PrintN("")
Print("Entrer au clavier le nombre de fois que la punition doit etre recopier : ")
nombreDeFois$ = Input()
nombreDeFois = Val(nombreDeFois$)
PrintN("")
PrintN("")
PrintN("Vous devez recopier " + Str(nombreDeFois) + " fois la punition suivante : " + punitionEntrer$)
While reponse$="n" Or reponse$="N"
If reponse$= "o" Or reponse$="O" Or reponse$="n" Or reponse$="N"
Print("Entrer soit o pour recommencer, soit n pour eteindre le programme : ")
reponse$ = Input()
PrintN("")
EndIf
Wend
Until reponse$ = "n" Or reponse$="N"
Re: Problème de syntaxe dans mon code source
Publié : dim. 13/févr./2011 14:46
par falsam
La prochaine fois que tu veux tester une valeur différente d'une autre utilise l'opérateur <>.
L’opérateur de différence
!= existe bien en langage C mais pas en Pure Basic.
http://www.purebasic.com/french/documen ... ables.html
Re: Problème de syntaxe dans mon code source
Publié : dim. 13/févr./2011 14:51
par Ar-S
Et j'ajoute qu'avec des OR ou des AND il te faut répéter le terme à considérer
toto$="n" OR toto$="N"
Pour éviter ce genre de OR, tu peux ici forcer la récupération de la valeur en minuscule :
tu peux aussi te simplifier le code en l'imbriquant comme ceci
Code : Tout sélectionner
nombreDeFois$ = Input()
nombreDeFois = Val(nombreDeFois$)
;deviendrait ainsi
nombreDeFois = Val(Input())
Re: Problème de syntaxe dans mon code source
Publié : dim. 13/févr./2011 15:13
par Backup
+1
SPH a écrit : While reponse$="n" Or reponse$="N"
hey ! pourquoi tu parle de "Or" alors qu'il veux "Different" (<>) ??
seul Falsam est dans le vrais
@Nemesty :
remplace ton != par <>
remplace
par
Re: Problème de syntaxe dans mon code source
Publié : dim. 13/févr./2011 15:27
par Ar-S
Falsam a répondu pour le <>, je ne fais que donner des infos complémentaires
et il peut en tirer profit ici justement
devient
Code : Tout sélectionner
reponse$=Lcase(reponse$)
While reponse$ <> "n"
;voir même
While Lcase(reponse$) <> "n"
Re: Problème de syntaxe dans mon code source
Publié : dim. 13/févr./2011 15:32
par falsam
Nemesty, bienvenu à toi dans ce forum de doux dingues.
Re: Problème de syntaxe dans mon code source
Publié : dim. 13/févr./2011 16:00
par Ollivier
Punition?
Re: Problème de syntaxe dans mon code source
Publié : dim. 13/févr./2011 16:24
par Nemesty
Merci les amis
Je pense poster mon code source une fois fini sur ce même poste pour d'éventuelle conseils
Encore merci

Re: Problème de syntaxe dans mon code source
Publié : dim. 13/févr./2011 21:02
par Nemesty
Petit up

Pour vous montrer mon tp fini et voir si vous n'avez pas quelque conseils sur mon code source à me faire par
Mon code source :
Code : Tout sélectionner
OpenConsole()
Repeat
power$ = ""
PrintN("")
PrintN("")
PrintN("***__SkyzPunitionV1__***")
PrintN("")
PrintN("")
PrintN("")
Print("Entrer au clavier la punition a recopier : ")
punitionEntrer$ = Input()
PrintN("")
Print("Entrer au clavier le nombre de fois que doit etre recopier la punition : ")
nombreDeFois = Val(Input())
nombreFoisAfficher = nombreDeFois
PrintN("")
PrintN("")
PrintN("Vous devez recopier " +Str(nombreDeFois) + " fois la punition : " +punitionEntrer$ +".")
Repeat
PrintN("")
PrintN("")
punitionRecopier$ = Input()
If punitionRecopier$ = punitionEntrer$
PrintN("")
nombreFoisAfficher = nombreFoisAfficher - 1
Print("Encore " + Str(nombreFoisAfficher) + " fois.")
i = i+1
Else
PrintN("")
PrintN("Vous n avez pas taper correctement la punition.")
EndIf
Until i = nombreDeFois
PrintN("")
PrintN("")
PrintN("Vous avez terminer !")
While LCase(power$) <> "o"
PrintN("")
Print("Pour commencer avec une autre punition taper 'o', pour eteindre le programme taper 'n' : ")
power$ = Input()
If LCase(power$) = "o"
nombreDeFois = 0
nombreFoisAfficher = 0
i = 0
punitionEntrer$ = ""
punitionRecopier$ = ""
ElseIf LCase(power$) <> "o"
PrintN("")
PrintN("Veuillez tapez soit 'o' pour recommancer soit 'n' pour fermer.")
ElseIf LCase(power$) = "n"
End
EndIf
Wend
Until LCase(power$) <> "o"
Voilà, merci d'avance

Re: Problème de syntaxe dans mon code source
Publié : dim. 13/févr./2011 21:42
par Backup
bon la console c'est pas mal
mais plutot utilise le visual designer , pour dessiner ton interface Fenetré
avec gadget (en demandant la generation de la boucle d'event) (voir Tuto en rubrique tuto de notre forum

)
ici :
http://www.purebasic.fr/french/viewtopi ... =21&t=6664
Tuto numero 8 rubrique "Débutant"
la console, c'est comment dire.... un peu ringue
