Version Française English Version

Planète Casio - Programmes, jeux et cours pour calculatrices Casio

Bookmark and Share
Bienvenue sur Planète Casio, n'hésitez pas à poser vos questions sur le forum, et pensez à rejoindre Planète Casio sur Facebook !
Spaceraider
Forums Casio - Problèmes de programmation ou avec un programme

Index du Forum | Problèmes de programmation ou avec un programme | Probleme boucles
Quikcyb
Statut : Invité
Posté le 01/04/2007 16:35

Probleme boucles:

bonjour à tous
voila j'expose mon problème :
en fait je suis en train de faire un convertisseur tout con avec une petite animation sympa en haut (convertisseur qui se balade de gauche à droite)
J'arrive à faire l'animation mais le problème c'est que la boucle de l'animation prend toute la place c'est à dire que le getkey ne marche plus, quand j'appui sur un ou sur deux rien ne se passe. enfin bref je donne le code c'est assez dur a expliquer:
ViewWindow 1,127,0,1,63,0
Cls
Text 20,15,1:De m/s en km/h
Text 40,15,2:De km/h en m/s
F-Line 12,22,12,42
15->A
Do
Lbl 1
Do
Text 1,A, Convertisseur
Isz A
LpWhile A<35
Do
Text 1,A,Convertisseur
Dsz A
LpWhile A>1
Goto 1
LpWhile Getkey=72 And Getkey=62
If Getkey=72
Then Cls
ClrText
Valeur (en m/s)?->I
Valeur en km/h:
Ix3.6
IfEnd
If Getkey=62
Then Cls
ClrText
Valeur (en km/h)?->J
Valeur en m/s:
J/3.6
IfEnd



Pages: 1, 2 | Suivante

Lenainnoir
Hors ligne
Super admin
Niveau: Elite
Points: 5186
Défis: 24
Email | Message
Citer : Posté le 01/04/2007 16:40 |
Ton Goto 1 te ramène à chaque fois au Lbl 1, donc le programme ne passe jamais sur le getkey.

Pour remédier à ce problème, enlève le Goto 1 et le Lbl 1, et, au niveau du LpWhile ne mets pas des = mais des "différent" (=/=), sinon il n'y aura pas de boucle.

Il faut interpréter la ligne LpWhile :
Reviens à "Do" tant que Getkey est différent de "code".

Je me permets de te faire remarquer que ton programme va planter ensuite, car il faut des guillemets pour le texte, tu ne peux l'écrire comme ça.
----------------------------------
Calculatrices : Fx 92 Collège, Graph 65, Graph 85, Classpad 300+.
Quikcyb
Statut : Invité
Citer : Posté le 01/04/2007 17:10 |
merci de me repondre
les guillemets je les avai mis mais en postant ca les a enlevés donc sur la calto ils y sont
Sinon j'ai enlevés les goto et lbl ca ne marche pas mieux.
le truc c'est c'est que quand j'appui sur 1 ou 2 ca marche mais uniquement quand le texte "convertisseur" revient au début, c'est à dire quand la boucle de l'animation recommence. Donc je sais pas comment faire pour que l'on puisse appuyer sur 1 ou 2 à n'importe quel moment.
Est ce que utiliser While/WhileEnd résoudrait ce problème? (parce que ca ma déja aidé)
merci d'avance
Lenainnoir
Hors ligne
Super admin
Niveau: Elite
Points: 5186
Défis: 24
Email | Message
Citer : Posté le 01/04/2007 17:58 |
Essaie de laisser enfoncé ta touche en permanence et dis-moi si ça marche au bout d'un moment.
----------------------------------
Calculatrices : Fx 92 Collège, Graph 65, Graph 85, Classpad 300+.
Pierrotll
Hors ligne
Administrateur
Niveau: Elite
Points: 4380
Défis: 29
Email | Message
Citer : Posté le 01/04/2007 18:03 |
1->A~B
Do
A+B->A
A=1 Or A=35=>-B->B
Text 1,A," Convertisseur "
Getkey
LpWhile Ans!=72 And Ans!=62
Ce sera tout de suite beaucoup mieux
----------------------------------
Gravity Duck <> Orton <> Hard Game <> Ball Game <> Falldown <> IndestructoTank <> Aspirine
Lenainnoir
Hors ligne
Super admin
Niveau: Elite
Points: 5186
Défis: 24
Email | Message
Citer : Posté le 01/04/2007 18:09 |
En effet, j'avais omis de faire l'optimisation AVANT de régler les problèmes.

Bien vu Pierrotll
----------------------------------
Calculatrices : Fx 92 Collège, Graph 65, Graph 85, Classpad 300+.
Quikcyb
Statut : Invité
Citer : Posté le 01/04/2007 19:55 |
merci a tous j'essaye...
mais quelqun pourrait m'xpliquer ce que ca veut dire?? ce serait sympa parce que j'ai pas entierement compris le code de Pierrotll.
Quikcyb
Statut : Invité
Citer : Posté le 01/04/2007 19:57 |
a si excusez moi je viens de piger...lol
merci encore
Samsamx
Hors ligne
Membre
Niveau: Vétéran
Points: 1426
Défis: 215
Email | Message
Citer : Posté le 01/04/2007 20:02 |
1->A~B
Definition des coordonnées de depart
Do
A+B->A
...
LpWhile Ans!=72 And Ans!=62
La boucle déplace ton texte vers la droite à chaque tour
A=1 Or A=35=>-B=>B
Si le texte atteint une extrémité (35 c'est pour éviter que ton texte ne sorte de l'écran), on mutiplie par -1 B, qui est la direction de ton texte (1 = droite, -1 = gauche)


Et le plus subtil :
Getkey
LpWhile Ans!=72 And Ans!=62

Ici, tu laisse un Getkey "dans le vide", c'est donc Ans qui va récupérer sa valeur :
- 0 s'il tu ne touche rien
- 72 pour le 1
- 62 pour le 2

Voila j'espère avoir été clair
----------------------------------
smiley
Only Rock'n Roll...
Calculettes : Graph 25 ; Graph 65 ; Graph 100+
Samsamx
Hors ligne
Membre
Niveau: Vétéran
Points: 1426
Défis: 215
Email | Message
Citer : Posté le 01/04/2007 20:03 |
hum... je suis en retard
----------------------------------
smiley
Only Rock'n Roll...
Calculettes : Graph 25 ; Graph 65 ; Graph 100+
Jeffprod
Hors ligne
Membre
Niveau: Elite
Points: 1813
Défis: 61
Email | Message
Citer : Posté le 02/04/2007 13:12 |
superbe comme explication samsamx, au moins tout est clair
----------------------------------
FX 82c, FX 92 college, Graph 65,Graph 85 SD

www.electro-club.fr
Quikcyb
Statut : Invité
Citer : Posté le 04/04/2007 20:08 |
Oui très clair merci encore

j'en profite pour poser une ou deux question :

Est-il possible de méler la fonction ? avec un getkey??(Je m'illustre, comme dab j'ai toujours du mal a expliquer):
Do
"Votre âge"?->A
LpWhile Getkey!=79

Bon la j'ai pris un exemple au pif, imaginons que quand on appuie sur F1 ca fasse un truc quelconque.

2ème question :
Je voudrai en savoir un peu plus les fonction pict (stopict et rclpict), si vous pouvez me donner un lien ou me dire ce que vous savez ce serait sympa(par exemple est ce que la photo enregistrée doit forcément avoir comme format 127x63, etc...)
merci d'avance.
Muelsaco
Hors ligne
Webmaster
Niveau: Elite
Points: 9335
Défis: 175
Email | Message
Citer : Posté le 04/04/2007 20:19 |
Pour que ton code marche il faut que l'utilisateur appuis directement sur f1 après avoir entré son age et mis entrer.

Sinon pour StoPict X çà capture l'écran dans un endroit X (de 1 à 6 sur graph <65) et RlcPict X la remet à l'écran.
----------------------------------
Calculatrices : Fx 92 Collège, Graph 25, Graph 65, Graph 85, Graph 100, Classpad 300.
Lenainnoir
Hors ligne
Super admin
Niveau: Elite
Points: 5186
Défis: 24
Email | Message
Citer : Posté le 04/04/2007 21:30 |
Plus d'info sur les picture :
Clique ici !
Et là !
----------------------------------
Calculatrices : Fx 92 Collège, Graph 65, Graph 85, Classpad 300+.
Samsamx
Hors ligne
Membre
Niveau: Vétéran
Points: 1426
Défis: 215
Email | Message
Citer : Posté le 05/04/2007 11:23 |
Et pour ta première question, la calculatrice va d'abord se bloquer au ?->A et demander un nombre, que tu aie appuyer ou non sur F1.
La seule différence, c'est que si tu n'appuie pas sur F1, elle te redemende sans cesse ton age
----------------------------------
smiley
Only Rock'n Roll...
Calculettes : Graph 25 ; Graph 65 ; Graph 100+
Quikcyb
Statut : Invité
Citer : Posté le 05/04/2007 14:56 |
merci pour les réponses.

pour ce qui est de la fonction pict je voulais surout savoir si on pouvais avoir une picture de par exemple 4x8 pixel au lieu de 127x63 et si cétait possible comment la mettre a un endroit précis de l'écran.

Et encore une dernière question (promis), quelles serait les solutions pour faire clignoter lentement quelque chose??
Par exemple à la vitesse du petit curseur qui clignote quand on doit écrire quelque chose sur la calto (_)

Jeffprod
Hors ligne
Membre
Niveau: Elite
Points: 1813
Défis: 61
Email | Message
Citer : Posté le 05/04/2007 15:46 |
avec la commande For tu peu faire clignoter a la vitesse que tu veux:

le plus simple
lbl 0
text X,Y,"A"
For 1->Z to 120 (valeur de vitesse)
if A=120
then text X,Y," "
ifend
next
goto 0


plus la valeur apres le to est grande plus le clignotement est lent...120 est exageré bien sur ! 40 suffit pour une commande "Locate"

finalement je crois pas que ce soit la façon la plus facile....
----------------------------------
FX 82c, FX 92 college, Graph 65,Graph 85 SD

www.electro-club.fr
Quikcyb
Statut : Invité
Citer : Posté le 05/04/2007 16:20 |
Super merci Jeffprod
j'avais essayé avec for mais j'ai du faire une erreur parce que ca ne marchait pas bien
merci
Muelsaco
Hors ligne
Webmaster
Niveau: Elite
Points: 9335
Défis: 175
Email | Message
Citer : Posté le 05/04/2007 17:56 |
Pour les Pict "ciblés" on ne peut malheureusement pas... Tu dois te débrouiller autrement. On ne peut pas non plus effacé qu'une partie de l'écran (à part en "trichaint" avec Text X,Y," ").
----------------------------------
Calculatrices : Fx 92 Collège, Graph 25, Graph 65, Graph 85, Graph 100, Classpad 300.
Lenainnoir
Hors ligne
Super admin
Niveau: Elite
Points: 5186
Défis: 24
Email | Message
Citer : Posté le 05/04/2007 18:35 |
Et ut peux poser autant de question que tu veux, on est là pour ça !
----------------------------------
Calculatrices : Fx 92 Collège, Graph 65, Graph 85, Classpad 300+.
Samsamx
Hors ligne
Membre
Niveau: Vétéran
Points: 1426
Défis: 215
Email | Message
Citer : Posté le 05/04/2007 19:20 |
Honte à toi Jeffprod, tu utilises des Goto
lol
----------------------------------
smiley
Only Rock'n Roll...
Calculettes : Graph 25 ; Graph 65 ; Graph 100+

Pages: 1, 2 | Suivante

Index du Forum | Problèmes de programmation ou avec un programme | Probleme boucles
Pseudo :
Adresse email :
Réponse :
 :)  ;)  :D  :p
 :lol:  8)  :(  :@
 0_0  :oops:  :grr:  :E
 :O  :sry:  :mmm:  :waza:
 :?:  :arrow:  :!:  :here:
Ajouter fichier joint :


Me prévenir par mail lorsqu'une réponse est postée.



Recherche :
Publicité et partenaires

Omnimaga

Space-Raider

Soutien scolaire

GameMasters.fr

Jeux Casio - www.planet-casio.com v3.0 © créé par Neuronix et Muelsaco 2004-2012 | Il y a 28 connectés | Nous contacter | Recherches effectuées
Rugby Manager | Jeu de handball | Jeu de foot | Jeu de rugby | Jeu de tennis | Space raider | Sublinet | Top-cinema, films, cinéma, séries | Pension pour chats

Planète-Casio est un site communautaire indépendant et n'est donc pas affilié à Casio | Toute reproduction de Planète-Casio, même partielle, est interdite
Les fichiers, programmes et publications postés sur Planète-Casio restent la propriété de leurs auteurs respectifs et peuvent être soumis à des copyrights
Merci de respecter le travail des autres ! | CASIO est une marque déposée par CASIO Computer Co., Ltd