Page 1 of 1

n non défini ?

Unread postPosted: 12 Jun 2017, 20:34
by Ziko_BVB
Voici le programme que j'ai écrit :
Code: Select all
Define cc()=
Prgm
a:=0.5
b:=0.5
For i,2,n
a:=0.5a+0.4
b:=1-a
EndFor
Disp a
Disp b
EndPrgm

Résultat : "Erreur de domaine", quelqu'un sait ou est mon erreur ? apparement ca a un rapport avec n

Re: n non défini ?

Unread postPosted: 12 Jun 2017, 20:36
by clifward
à aucun moment tu ne définis n...
Je veux dire, n n'a aucune valeur, au moment où la boucle for va regarder son "contenu"
(soit tu passes n en argument, en écrivant cc(n), soit tu faire un Request "n : ",n, soit tu écris n:=qqch)

Re: n non défini ?

Unread postPosted: 12 Jun 2017, 20:37
by Ziko_BVB
Je me disais bien, cependant y'a une erreur quelque part, pour moi n ne change pas

Re: n non défini ?

Unread postPosted: 12 Jun 2017, 20:38
by Hamza.S
tu ne l'as pas défini dans ton code ça ne fonctionnera pas tant que tu ne l'as pas fait.
tu as bien défini a et b a:=0.5 et b:=0.5

Re: n non défini ?

Unread postPosted: 12 Jun 2017, 20:39
by clifward
Ouais, mais actuellement, n ne vaut rien... Faut lui donner une valeur numérique, avant de faire tourner ta boucle for (comme pour a et b)
(d'ailleurs, ajoute local a,b,n au début de ton programme pour ne pas utiliser des variables globales)

Re: n non défini ?

Unread postPosted: 12 Jun 2017, 20:39
by Bisam
Dans ton programme, la variable "n" n'a pas de valeur... et du coup, au moment de l'exécution de la boucle for, le programme ne sait pas quand il doit s'arrêter : cela provoque une erreur.

Il faut au choix :
- mettre "n" en paramètre de ton programme (c'est-à-dire écrire Define cc(n)= sur la première ligne. Dans ce cas, tu l'exécuteras en tapant cc(42).
- ou bien mettre un Input n au début pour réclamer la valeur de "n" au moment de l'exécution.

Re: n non défini ?

Unread postPosted: 12 Jun 2017, 20:51
by Ziko_BVB
Ah c'est bon n a bel et bien une valeur, c'est bon merci beaucoup :D