Page 1 sur 1

boucle ... next

Publié : sam. 04/août/2007 18:15
par jerexgrz
Ce n'est pas vraiment un bug mais :

Code : Tout sélectionner

For zz = 1 To 20
    If zz= 10 : zz = 5 : EndIf
Next zz
On se retrouve face à une boucle infinie ! le probleme, c'est que lorsque l'on veut quitter cette boucle, et bien, on peut pas et tout le systeme se bloque ! Heureusement, qu'il y a la touche "mise en veille" !!

Publié : sam. 04/août/2007 18:18
par tmyke
C'est normal, la valeur d'index dans ta boucle (zz) n'atteindra
jamais 20 puisqu'a 10 tu le remet à 5 ... :?

Publié : sam. 04/août/2007 18:54
par Backup
tmyke a écrit :C'est normal, la valeur d'index dans ta boucle (zz) n'atteindra
jamais 20 puisqu'a 10 tu le remet à 5 ... :?
ce qu'il veux dire , je pense , c'est que certain basic empêche
de pouvoir toucher la variable de la boucle (zz) :D

mais je trouve que dèja que for-next est "bloqué" aux entier
il reste ça et c'est bien , cela permet de réactualiser une boucle a la volée :D
tant mieux, ce genre "d'erreur" est quand même a la base un defaut d'algorithmie du programmeur , pas la faute de purebasic :D

Publié : sam. 04/août/2007 19:00
par tmyke
Dobro a écrit : ce qu'il veux dire , je pense , c'est que certain basic empêche
de pouvoir toucher la variable de la boucle (zz) :D
oui, c'est vrai, mais ils doivent se faire rare maintenant. Pouvoir controler dans
son code la variable d'index de sa boucle est en effet un atout dans certains cas.

;)

Publié : sam. 04/août/2007 20:07
par jerexgrz
:wink:
Pour etre + precis, en faite, quand le prog execute plusieurs choses en meme temps (dessin image, reactualisation pointeur souris,...) et que l'on utilise une boucle comme ca (simplifier), il n'y a plus moyen d'arreter l'ordi : escape, ctrl + escape, ctrl + tab, ... c'est surtout ca qui est genant !

Par contre si on execute ce code dans une fenetre sans rien d'autre, il n'y a pas de problemes : tu peux arreter le code normalement.

Publié : sam. 04/août/2007 23:58
par Backup
jerexgrz a écrit ::wink:
Pour etre + precis, en faite, quand le prog execute plusieurs choses en meme temps (dessin image, reactualisation pointeur souris,...) et que l'on utilise une boucle comme ca (simplifier), il n'y a plus moyen d'arreter l'ordi : escape, ctrl + escape, ctrl + tab, ... c'est surtout ca qui est genant !
reste le sampiternel CTRL+ALT+DEL qui appel le manager :D
un click bouton droit sur le prg qui resiste , generalement nommé purebasicx
le x etant un numero, et hop le tour est joué :D

Publié : lun. 06/août/2007 17:50
par jerexgrz
:? Meme avec le ctrl + alt + del, le prog fait de la resistance ! c pour ca, qu'il ne me reste + que la mise en veille pour arreter le furious programme ! lol :lol:

Publié : lun. 06/août/2007 18:07
par cederavic
tu peut toujours sortir avec un Break, ou alors ajouter un Delay(1) mais là ce qui se passe dans la boucle va etre enormement plus long