1

Bonjour, j'ai voulus crée un petit programme pour ma Ti-89. Apres l'avoir finis au moment de le lancer un message d'erreur s'affiche : "invalid variable or function name"

merci de bien vouloir me venir en aide.

voici mon code
()
Prgm

clrIO
lbt start

Toolbar
Title "Pythagore"
Item "Reciproque",reci
Item "Theoreme",theo
Title "Quit",qt
EndTBar

lbl reci
clrIO
Disp "Valeur hypothenuse"
Input A
Disp "Valeur de la longueur 1"
Input B
Disp "Valeur de la longueur 2"
Input C
D»(A^2)
E»(B^2+C^2)
If D=E Then
Dialog
Title "resultat"
Text "Le triangle est rectangle"
EndDlog
Else
Dialog
Title "resultat"
Text "Le triangle n'est pas rectangle"
EndDlog
EndElse
EndIf
clrhome
Goto start

lbl theo
clrIO
Disp "Pour la valeur inconue mettre 0"
Disp "Valeur de l'hypothenuse"
Input A
Disp "Valeur de la longueur 1"
Input B
Disp "Valeur de la longueur 2"
Input C
If A=0 Then
D»(B^2+C^2)
A»(§(D))
Dialog
Title "Resultat"
Text "L'hypothenuse est egale a",A
EndDlog
EndIf
If B=0 Then
D»(A^2-C^2)
B»(§(D))
Dialog
Title "resultat"
Text "La valeur 1 est egale a :",B
EndDlog
EndIf
If C=0 Then
D»(A^2-B^2)
C»(§(D))
Dialog
Title "resultat"
Text "La valeur 2 est egale a :",C
EndDlog
EndIf
clrhome
goto start
lbl qt
clrIO
Disp homeEndPrgm

2

TheRoyalix (./1) :
D»(A^2)

C'est pas comme beaucoup d'autres langages, en Basic, il faut écrire A^2»D

3

en effet, dans les autres langages, on a A=B qui indique que A doit prendre la valeur de B, là, c'est la commande STO (pour store en anglais) et A»B veut dire il faut stocker la valeur de A dans B
avatar
Webmaster du site Ti-FRv3 (et aussi de DevLynx)
Si moins de monde enculait le système, alors celui ci aurait plus de mal à nous sortir de si grosses merdes !
"L'erreur humaine est humaine"©Nil (2006) // topics/6238-moved-jamais-jaurais-pense-faire-ca

4

Merci beaucoup à vous, vous m'avais retiré une belle épine du pied !

5

A ton service wink

6

Je trouve d'ailleurs bizarre que cette notation ne soit pas plus utilisée dans d'autre langage. Elle est selon moi à la fois plus proche de ce qui se passe en réalité : on effectue le calcul puis on le stocke, et on évite la confusion entre affectation et égalité.
avatar

7

C'est probablement parce que y'a pas de touche qui génère un caractère de flèche sur les claviers standards hehe

Ceci dit, le Pascal/Delphi utilise := pour les affectations, et = pour l'égalité.
avatar
Zeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

8

En effet Pascal utilise bien un double caractère pour l'opérateur d'affectation, dont je pense que -> n'aurait pas posé de grave problème. La sytaxe de l'affectation en Pascal me semble moins troublante que celle des langages de type C, mais on grade l'utilisation du signe = pour quelque chose qui n'a rien a voir a voir avec une égalité, et on reste en sens inverse de ce qui ce fait au niveau machine. Le pire est a mon avis le VB qui lui ne différencie pas du tout l'affectation et la comparaison dans sa syntaxe.
avatar

9

amha ça permet d'avoir un code plus lisible : une seule variable à gauche de l'opérateur d'affectation, et des calculs et des appels de fonction à droite, qui seront a priori plus long. Venant du ti-basic, ça m'a emmerdé quand j'ai commencé le C, puis finalement j'ai trouvé ça pas idiot.