Page 1 sur 1

Sortir d'une boucle et continuer

Publié : 19 août 2019, 18:49
par MarcF
Bonjour
J'ai une valeur dans une variable
je lance un scénario avec un rand(1,8)
Je fais une boucle X 15 tant que mon rand est = à ma variable

Le pb c'est que si je suis = avant la fin de la boucle je fais comment pour continuer le scenario
j'ai testé avec STOP mais tout s'arrete
J'ai vu un post avec BREAK mais je ne trouve pas cette fonction

Help merci

Re: Sortir d'une boucle et continuer

Publié : 19 août 2019, 21:11
par poluket
Quand c'est le bon, met le compteur de ta boucle en dehors du scope. Cela arrêtera la boucle

Met un screenshot de ton scénario

Re: Sortir d'une boucle et continuer

Publié : 21 août 2019, 09:30
par MarcF
Bonjour
Je n'ai pas tout compris "met le compteur de ta boucle en dehors du scope"
Ci-joint scénario de test que je souhaite incorporer en début d'un autre mais la fonction STOP arrete le scénario

ScreenShot015.jpg
ScreenShot015.jpg (99.87 Kio) Consulté 2861 fois

Re: Sortir d'une boucle et continuer

Publié : 21 août 2019, 11:54
par Mips2648
Salut,

je vais répondre juste pour la forme parce que je ne vois pas l'intérêt de ce scénario (j'ai bien compris le but: généré un rand différent à chaque execution) mais il serait judicieux de comprendre le besoin d'origine qui fait d'arriver à un tel truc, bref.

Il n'est pas possible d’interrompre ce type de boucle autrement que par le stop;
Donc inverse ton premier bloc SI et ta boucle,
- donc tu commences toujours à bloquer,
- SI = tu refais ton rnd etc (tout ce qu'il y a dans ta boucle pour le moment)
- SINON tu sauves ta variables "precedent" et tu stop.

Re: Sortir d'une boucle et continuer

Publié : 21 août 2019, 15:15
par MarcF
Effectivement dans la suite ou une explication du scénario ça n'a pas de sens désolé

Le RAND déclenche un allumage de lampes aléatoire en heure, nombre et durée
Je ne souhaite pas qu'au passage suivant il y ait le même allumage
J'espère que c'est un peu plus clair

Je vais tester le SI en 1er
Merci

Re: Sortir d'une boucle et continuer

Publié : 21 août 2019, 15:29
par Mips2648
MarcF a écrit :
21 août 2019, 15:15
Je vais tester le SI en 1er
Merci
Euh non justement, tu dois avoir un truc du style:

Code : Tout sélectionner

premier rnd
BOUCLE 1 à 10
	SI = précédent
		nouveau rnd
	SINON
		save variable precedent
		stop
autrement dit, ca revient à supprimer le bloc SI bleu de ta capture en gardant tout le reste en place (vert, mauve et orange)

pour réduire encore plus les étapes tu peux faire

Code : Tout sélectionner

BOUCLE 1 à 10
	rnd
	SI != précédent
		save variable precedent
		stop

Re: Sortir d'une boucle et continuer

Publié : 21 août 2019, 18:56
par MarcF
Mais le pb est que je souhaite supprimer le STOP et sortir de la boucle si la condition est vraie car le scenario doit se poursuivre

Re: Sortir d'une boucle et continuer

Publié : 21 août 2019, 19:46
par Mips2648
Ce ne sera pas possible (ou alors il faut organiser les "SI" autrement et laisser la boucle tourner dans le vide (un peu comme la première solution que je propose mais sans le stop), le scénario va juste tourner x fois pour rien ... ca va fonctionner mais c'est pas "joli"

je te propose plutot de continuer avec le 2eme exemple et garder le stop
tu rajoutes un "scenario_return" à la fin qui renvoi la valeur trouvée.

appelle ce scénario 'getrandomvalue' par exemple et il ne fera rien d'autre
depuis un deuxième scénario, la première chose que tu fais c'est appeler celui-ci et ensuite de continuer les étapes

Re: Sortir d'une boucle et continuer

Publié : 21 août 2019, 19:47
par Poumi
Mips2648 a écrit :
21 août 2019, 19:46
Ce ne sera pas possible (ou alors il faut organiser les "SI" autrement et laisser la boucle tourner dans le vide (un peu comme la première solution que je propose mais sans le stop), le scénario va juste tourner x fois pour rien ... ca va fonctionner mais c'est pas "joli"

je te propose plutot de continuer avec le 2eme exemple et garder le stop
tu rajoutes un "scenario_return" à la fin qui renvoi la valeur trouvée.

appelle ce scénario 'getrandomvalue' par exemple et il ne fera rien d'autre
depuis un deuxième scénario, la première chose que tu fais c'est appeler celui-ci et ensuite de continuer les étapes
Ou de mettre les étapes après la boucle directement dans le 2eme scénario non?

Re: Sortir d'une boucle et continuer

Publié : 21 août 2019, 19:51
par Mips2648
Poumi a écrit :
21 août 2019, 19:47
Ou de mettre les étapes après la boucle directement dans le 2eme scénario non?
Soit je n'ai pas compris, soit je disais la même chose
Mips2648 a écrit :
21 août 2019, 19:46
depuis un deuxième scénario, la première chose que tu fais c'est appeler celui-ci et ensuite de continuer les étapes
"continuer les étapes" étant celle qui actuellement sont après ta boucle

Re: Sortir d'une boucle et continuer

Publié : 21 août 2019, 19:54
par Poumi
C’est moi qui ai mal compris, je pensais que tu disais de rapeller le premier...

Du coup on le voit pas tout à fait pareil (pour moi c’etait ce scénario qui appelait l’autre avant le stop, d’ou Le fait que je comprenais pas pourquoi tu valais le rappeler) mais ça doit revenir au même...

Re: Sortir d'une boucle et continuer

Publié : 21 août 2019, 20:05
par MarcF
C'est bien compliqué il faudrait une nouvelle fonction pour sortir proprement d'une boucle

J'ai modifié le scénario
Si nouvelle valeur = précédente et si supérieur a valeur maxi de mon RAND
Je force la variable a 1

Merci a tous pour vos idées mais je préfère rester basic pour m'en rappeler plus tard