Page 1 of 1

programation

Unread postPosted: 03 May 2015, 16:27
by alphaméthyste
bonjour

merci d'avance pour toute réponse

je debute dans la programmation de la TI-inspire CX CAS

je dispose de fichiers pdf qui expliquent tout cependant là je ne trouve pas de solution pour le probleme suivant

lorsque que je construis la fonction suivante et que je fais appel à cette fonction le message suivant s'affiche

par ailleurs un message d'erreur de syntaxe apparait lorsque j'en vérifie la syntaxe

le message d'erreur qui apparait étant le suivant
"il y a trop d'arguments
le nombre excessif d'arguments spécifié pour la fonction ou la commande rend son évaluation impossible"

ma fonction agm(a,b,eps) donc à trois arguments a,b et eps sont des nombres réels strictements positif et eps strictement inférieur à 1

Code: Select all
Define agm(a,b,eps)=
Func
Local a0,b0,c
a0:=((a+b)/2),b0:=√ {a.b}

While abs(a0,b0)>eps
a0:=((a0+b0)/2),b0:=√ {a0.b0}
EndWhile
c:=a0
Return c
EndFunc

Re: programation

Unread postPosted: 03 May 2015, 16:35
by Bisam
Tu ne peux pas écrire plusieurs instructions sur la même ligne en les séparant par des virgules.
Il faut soit les séparer par : soit les écrire sur des lignes différentes.

Par ailleurs, pourquoi avoir mis des accolades autour de {a.b} ? Je suppose que tu voulais seulement mettre des parenthèses... mais les accolades représentent des listes sur la calculette... et cela engendrera aussi une erreur.

Re: programation

Unread postPosted: 03 May 2015, 16:45
by alphaméthyste
Merci Bisam

bon pour les accolades de racine carrée là c'est pour vous dire que j'effectue une racine carrée mais sinon j'en met pas dans mon programme

donc apres avoir modifié selon tes indications
bon alors là il marque aucune erreur de syntaxe mais par contre toujours le même message (trop d'arguments)

merci d'avance

Re: programation

Unread postPosted: 03 May 2015, 16:48
by Bisam
Bah oui, dans ta valeur absolue, il faut mettre abs(a0-b0) et non une virgule !!

Re: programation

Unread postPosted: 03 May 2015, 16:51
by alphaméthyste
non j'ai mal recopié mon code ici Bisam

j'ai bien mis abs(a0-b0)

merci car je debute

ps: je vais voir dans FAQ comment écrire son code sur ce forum
je suis un peu perdu...

Re: programation

Unread postPosted: 03 May 2015, 16:55
by Bisam
Donc, maintenant, ton programme a cette tête :
Code: Select all
Define agm(a,b,eps)=
Func
Local a0,b0,c
a0:=((a+b)/2)
b0:=√(a*b)
While abs(a0-b0)>eps
    a0:=((a0+b0)/2)
    b0:=√(a0*b0)
EndWhile
c:=a0
Return c
EndFunc


Si c'est le cas, je pense que tu as oublié d'appuyer sur :nsct: :nsb: pour valider les changements effectués à ton code avant de le tester !

Re: programation

Unread postPosted: 03 May 2015, 16:58
by alphaméthyste
merci Bisam

à charge de revanche

grand merci