Pb programme casio 35+
Posté le 03/04/2013 17:06
bonjour , apparement il y à une syntaxe error au debut mais je ne la trouve pas et vous?
Programme raccord :
Lbl 0 [exe]
“RACCORD [space] L [space] →1“ [exe]
“RACCORD [space] X [space] →2“ [exe]
“RACCORD [space] T [space] →3“ [exe]
“TYPE DE RACCORD“ ? → Z [exe]
“E2“ ? → E [exe]
“E1“ ? → F [exe]
E/F → R [exe]
If Z=1 : Then Goto 1 [exe]
Else If Z=2 : Then Goto 2 [exe]
Else If Z=3 : Then Goto 3 [exe]
IfEnd [exe]
Lbl 1 [exe]
If R≤0.75 [exe]
Then [exe]
“W=“ [exe]
1.28xR+0.04 → W▲
“ER=“ [exe]
WxF▲
Goto 0 [exe]
Else [exe]
“W=“ [exe]
0.4xR+0.7 → W▲
“ER=“ [exe]
WxF▲
Goto 0 [exe]
IfEnd [exe]
Lbl 2 [exe]
If R≤0.5 [exe]
Then [exe]
“W=“ [exe]
2.5xR - 0.25 → W▲
“ER=“ [exe]
WxF▲
Goto 0 [exe]
Else [exe]
“W=“ [exe]
0.8xR+0.6 → W▲
“ER=“ [exe]
WxF▲
Goto 0 [exe]
IfEnd [exe]
Lbl 3 [exe]
If R≤0.5 [exe]
Then [exe]
“W=“ [exe]
0.2/0.14xR+0.8–0.2/0.14x0.36 → W▲
“ER=“ [exe]
WxF▲
Goto 0 [exe]
Else If R≤1 And R>0.5 [exe]
Then [exe]
0.5xR+0.75→ W▲
Goto 0 [exe]
Else If R≤1.54 And R>1 [exe]
Then [exe]
-0.25/0.54xR+1.25+0.25/0.54 → W▲
“ER=“ [exe]
WxE▲
Goto 0 [exe]
Else If R>1.54 : Then [exe]
0.3594xR²-1.8411xR+2.983 → W▲
“ER=“ [exe]
WxE▲
Goto 0 [exe]
IfEnd [exe]
Merci d'avance
secna Invité
Citer : Posté le 03/04/2013 17:15 | #
d'apres ma casio l'erreur vient du
WxF▲
Goto 0 [exe]
Else [exe]
“W=“ [exe]
Citer : Posté le 03/04/2013 17:22 | #
A quoi correspond le "Wx" ?
Aussi, je te conseille de bannir les labels de tes programmes, ils n'apportent que les bugs et l'incompréhension du code
secna Invité
Citer : Posté le 03/04/2013 17:28 | #
c'est ma variable W multiplié par F avec les petit triangle qui s'affiche mal ici
secna Invité
Citer : Posté le 03/04/2013 17:33 | # | Fichier joint
en imprime ecran cela donne ceci
secna Invité
Citer : Posté le 03/04/2013 17:35 | # | Fichier joint
plus ceci
Ajouté le 03/04/2013 à 17:43 :
Programme raccord :
Lbl 0 [exe]
“RACCORD [space] L [space] →1“ [exe]
“RACCORD [space] X [space] →2“ [exe]
“RACCORD [space] T [space] →3“ [exe]
“TYPE DE RACCORD“ ? → Z [exe]
“E2“ ? → E [exe]
“E1“ ? → F [exe]
E/F → R [exe]
If Z=1 : Then Goto 1 [exe]
Else If Z=2 : Then Goto 2 [exe]
Else If Z=3 : Then Goto 3 [exe]
IfEnd [exe]
Lbl 1 [exe]
If R≤0.75 [exe]
Then [exe]
“W=“ [exe]
1.28xR+0.04 → W▲
“ER=“ [exe]
WxF▲
Goto 0 [exe]
Else [exe]
“W=“ [exe]
0.4xR+0.7 → W▲
“ER=“ [exe]
WxF▲
Goto 0 [exe]
IfEnd [exe]
Lbl 2 [exe]
If R≤0.5 [exe]
Then [exe]
“W=“ [exe]
2.5xR - 0.25 → W▲
“ER=“ [exe]
WxF▲
Goto 0 [exe]
Else [exe]
“W=“ [exe]
0.8xR+0.6 → W▲
“ER=“ [exe]
WxF▲
Goto 0 [exe]
IfEnd [exe]
Lbl 3 [exe]
If R≤0.5 [exe]
Then [exe]
“W=“ [exe]
0.2/0.14xR+0.8–0.2/0.14x0.36 → W▲
“ER=“ [exe]
WxF▲
Goto 0 [exe]
Else If R≤1 And R>0.5 [exe]
Then [exe]
0.5xR+0.75→ W▲
Goto 0 [exe]
Else If R≤1.54 And R>1 [exe]
Then [exe]
-0.25/0.54xR+1.25+0.25/0.54 → W▲
“ER=“ [exe]
WxE▲
Goto 0 [exe]
Else If R>1.54 : Then [exe]
0.3594xR²-1.8411xR+2.983 → W▲
“ER=“ [exe]
WxE▲
Goto 0 [exe]
IfEnd [exe]
Ajouté le 03/04/2013 à 17:58 :
Lbl 0 [exe]
“RACCORD [space] L [space] →1” [exe]
“RACCORD [space] X [space] →2” [exe]
“RACCORD [space] T [space] →3” [exe]
“TYPE DE RACCORD” ? → Z [exe]
“E2” ? → E [exe]
“E1” ? → F [exe]
E/F → R [exe]
If Z=1 : Then Goto 1 [exe]
Else If Z=2 : Then Goto 2 [exe]
Else If Z=3 : Then Goto 3 [exe]
IfEnd [exe]
Lbl 1 [exe]
If R≤0.75 [exe]
Then [exe]
“W=“ [exe]
1.28xR+0.04 → W▲
“ER=“ [exe]
WxF▲
Goto 0 [exe]
Else [exe]
“W=“ [exe]
0.4xR+0.7 → W▲
“ER=“ [exe]
WxF▲
Goto 0 [exe]
IfEnd [exe]
Lbl 2 [exe]
If R≤0.5 [exe]
Then [exe]
“W=“ [exe]
2.5xR - 0.25 → W▲
“ER=“ [exe]
WxF▲
Goto 0 [exe]
Else [exe]
“W=“ [exe]
0.8xR+0.6 → W▲
“ER=“ [exe]
WxF▲
Goto 0 [exe]
IfEnd [exe]
Lbl 3 [exe]
If R≤0.5 [exe]
Then [exe]
“W=“ [exe]
0.2/0.14xR+0.8–0.2/0.14x0.36 → W▲
“ER=“ [exe]
WxF▲
Goto 0 [exe]
Else If R≤1 And R>0.5 [exe]
Then [exe]
0.5xR+0.75→ W▲
Goto 0 [exe]
Else If R≤1.54 And R>1 [exe]
Then [exe]
-0.25/0.54xR+1.25+0.25/0.54 → W▲
“ER=“ [exe]
WxE▲
Goto 0 [exe]
Else If R>1.54 : Then [exe]
0.3594xR²-1.8411xR+2.983 → W▲
“ER=“ [exe]
WxE▲
Goto 0 [exe]
IfEnd [exe]
Ajouté le 03/04/2013 à 17:58 :
désolé pour le spam je n\'arrive pas à le faire passer correctement
Citer : Posté le 03/04/2013 18:07 | #
c'est bon, j'ai vu...
t'étais pas obligé de changer les retour à la ligne en [EXE], on les devine
j'ai trouvé le bug: tu n'as pas refermé toutes les balises If:
Else If Z=2 : Then Goto 2 [green]<- 2 If[/green]
Else If Z=3 : Then Goto 3 [green]<- 3 If[/green]
IfEnd [green]<- 1 IfEnd[/green]
[b]IfEnd[/b] [green]<- 2 IfEnd[/green]
[b]IfEnd[/b] [green]<- 3 IfEnd[/green]
Il faut vraiment que tu refasse ton programme sans les labels: pour commencer, au lieu de faire un truc du genre:
Else If Z=2 : Then Goto 2
Else If Z=3 : Then Goto 3
IfEnd
IfEnd
IfEnd
...
Lbl 1
...
Lbl 2
...
Lbl 3
...
Tu as le droit de mettre tes instructions dans les If/Then, et pour revenir au début met une boucle:
If Z=1
Then ...
...
Else If Z=2
Then ...
...
Else If Z=3
Then ...
...
IfEnd
IfEnd
IfEnd
[blue]WhileEnd[/blue]
Citer : Posté le 03/04/2013 18:39 | #
Je l'ai refais en mettant les ifend sans enlever les label et il me dit que c'est mon 1er else qui le fait bloquer .
Je ne sais pas encore utiliser le while 1 whilend.
Ajouté le 03/04/2013 à 19:00 :
en fait selon la valeur de R que je prend c\'est soit sur le exe juste pares le then ou sur celui juste apres le else que on pointe l\'erreur
Ajouté le 03/04/2013 à 19:03 :
A priori c\'est même l\'opérateur que je met juste apreès le then ou le else qu\'il n\'aime pas
Citer : Posté le 03/04/2013 19:06 | #
Pourquoi tu mes des pints virgules ?
Citer : Posté le 03/04/2013 19:07 | #
J'ai trouvé il ne fallait rien mettre après le then et le else merci de ton aide
Citer : Posté le 03/04/2013 19:54 | #
T'as une G35+ verte Secna ?
J'ai hésité à te le dire, mais il ne faut pas d'espace après ces commandes sur les vieilles Graph