Bonjour,
Dans un programme (ti 89) j'ai une boucle while ... endwhile à l'intérieur de laquelle se trouve un if ... then ... endif.
Le code affiche dans un tableau (pxlligne) via un pxltext des informations que l'utilisateur a rentrés via un request .
Problème : lorsque la condition du if est vérifié, tous ce qui était déjà affiché s'efface.
[source=plain]input x
effdessin
effgraph
effercran
pxlligne 25,0,25,158
pxlligne 50,0,50,158
1->i
while i<=x
entpréc(i*(158/(x+1)))->a
pxlligne 0,a,76,a
i+1->i
endwhile
pxltexte "e.i.",2,2
pxltexte "inter",27,2
pxltexte "e.f.",52,2
1-> i
9999->xmax
while i->x
request "coefficient",y,off
request "quantité de matière",n,off
entpréc(i*(158/x+1)))->a
a+2->b
pxltexte n,2,b
n&"-"&y&"x"->c
pxltexte c,27,b
y->t1(i)
n->t2(i)
expr(y)->y
expr(n)->n
n/y->e
if e<xmax then
e->xmax
endif
1+i->i
endwhile
pause
disp xmax[/source]
merci de votre aide
ps: une partie sans importance pour ce problème est placé avant ce programme
sam22 2010-02-15 at 02:33pm Baah j'ai pas trop reflechi pour ton probleme mais sinon quand tu entre dans ta boucle if tu sauvegarde l'écran
et tu le réaffiche après.
Sinon ton programme c'est un truc pour la chimie?? (genre déterminer L'avancement final ??)
sam22 2010-02-15 at 02:38pm Sinon le while i->x c'est pas plutot while i>x ou autre chose parce que while i->x c'a marchera pas....
oui mon programme est un tableau d'avancement pour la chimie (bien vu ^^)
c'est bien while i<x que j'ai mis sur ma calculette je me suis trompé en recopiant
comment fait on une capture d'écran ? et comment la remet on après ?
merci de ton aide
ah c'est pour ça que j'arrivais pas à déclarer xmax comme variable locale !
Je viens de vérifier mes paramètres graphiques et effectivement xmax a pris la valeur de mon programme !
mon programme maintenant marche avec placeimg et sauveimg .
je vais changer le nom de variable ça sera plus simple !!
merci !
apres avoir changé le nom de la variable tout roule comme sur des roulettes !
juste une dernière petite question : comment on fait pour désactiver le alpha automatique dans les request ?
merci je pense pouvoir maintenant finir mon programme !!
Je crois qu'il faut rajouter un 0 ou un 1 à la fin, ou peut-être true ou false, je sais plus...
sam22 2010-02-15 at 03:47pm alpha automatique dans les request => request prend un argument facultatif (mis a 1 par defaut) donc faut que tu mette un ,0 a la fin de ton request ou ,1 je sais plus....
Si tu fais ton disp dans un autre programme/fonction et que y et n sont locaux à un autre, ça ne marchera pas.
Mais reposte ton programme, dans l'état (post 0), il ne me semblerait pas devoir donner ça.
finalement j'ai utilisé les indirections !
merci pour votre aide, grâce à vous j'ai un tableau d'avancement qui marche !!