π
<-
Chat plein-écran
[^]

Comportement aberrant

Comportement aberrant

Message non lude UnCurieux » 12 Juin 2019, 17:46

J'ai fait un programme tout simple, qui trace de jolis traits colorés...
J'ai voulu ajouter un compteur de minutes, puisqu'il doit fonctionner 30 mn.
Et là... Le comportement devient aberrant : le programme saute des étapes, ce qui est censé être aléatoire ne l'est plus...
Or ce qui est vraiment étrange est que seule la ligne Text( est responsable de cela.
Vous avez le programme normal en dessous, avec un " devant la ligne pour qu'elle ne s'active pas, et dès qu'on l'enlève cela devient n'importe quoi.

J'ai mis des commentaires seulement ici :
Code: Tout sélectionner
"Initialisation
0→Xmin
264→Xmax
0→Ymax
­164→Ymin
ClrDraw
AxesOff
GridOff
BorderColor 1
BackgroundOff
Line(0,0,264,0,10,1
Line(0,0,0,­164,10,1
Line(264,0,264,­164,10,1
Line(264,­164,0,­164,10,1
[[0,1][1,0][0,­1][­1,0]]→[B]
0→A
startTmr→F

"La boucle
While startTmr-F<1800
"Text(0,0,round((startTmr-F)/60,0))
[B](A+1,1)→B
[B](A+1,2)→C
randInt(1,163)→D
randInt(1,263)→E
While pxl-Test(D,E)=0
Pxl-On(D,E,10+A
D+B→D
E+C→E
End
If D≠0 and D≠164 and E≠0 and E≠264:Pxl-Off(D,E
A+1→A
remainder(A,4→A
End
Disp round((startTmr-F)/60,0)


Boucle normale :
Ecran normal.png
Ecran normal.png (2.1 Kio) Vu 2002 fois

En enlevant " devant Text( :
Ecran bugué à 3mn.png
Ecran bugué à 3mn.png (2.48 Kio) Vu 2002 fois
Fichiers joints
GRILLE.8xp
(398 Octets) Téléchargé 67 fois
Maths, fractales, géométrie, packs de levels Oiram, jeux, physique, ... : ici

ImageImage
Avatar de l’utilisateur
UnCurieuxProgrammeur
Niveau 11: LV (Légende Vivante)
Niveau 11: LV (Légende Vivante)
Prochain niv.: 23.7%
 
Messages: 367
Images: 2
Inscription: 19 Mai 2017, 18:20
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: Prépa scientifique 1A

Re: Comportement aberrant

Message non lude critor » 12 Juin 2019, 23:18

Certaines instructions ont des effets de bord.

Par exemple, certaines instructions graphiques modifient les variables X et ou Y.

Si le codage interne de l'aléatoire a quelque chose à voir avec l'horloge, pas impossible que ton affichage de l'horloge perturbe l'aléatoire.
Image
Avatar de l’utilisateur
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Prochain niv.: 41.8%
 
Messages: 41470
Images: 14480
Inscription: 25 Oct 2008, 00:00
Localisation: Montpellier
Genre: Homme
Calculatrice(s):
MyCalcs profile
YouTube: critor3000
Twitter/X: critor2000
GitHub: critor

Re: Comportement aberrant

Message non lude edgar13 » 13 Juin 2019, 12:22

Oui. par exemple impossible de mettre une boucle for avec Y! >:]
Mes programmes sont ici: archives_cat.php?auteur=201254
Avatar de l’utilisateur
edgar13Modo
Niveau 12: CP (Calculatrice sur Pattes)
Niveau 12: CP (Calculatrice sur Pattes)
Prochain niv.: 97.4%
 
Messages: 589
Images: 24
Inscription: 04 Jan 2019, 20:31
Localisation: Sur TI-Planet voyons
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: 1ere année de license maths-info
YouTube: Non
Twitter/X: Non
Facebook: Non
GitHub: Non

Re: Comportement aberrant

Message non lude Lionel Debroux » 13 Juin 2019, 12:25

Apparemment, startTmr a des effets de bord. Vérifie la façon dont tu utilises cette fonction.
Membre de la TI-Chess Team.
Co-mainteneur de GCC4TI (documentation en ligne de GCC4TI), TIEmu et TILP.
Avatar de l’utilisateur
Lionel DebrouxSuper Modo
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Prochain niv.: 11.2%
 
Messages: 6859
Inscription: 23 Déc 2009, 00:00
Localisation: France
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: -
GitHub: debrouxl

Re: Comportement aberrant

Message non lude UnCurieux » 13 Juin 2019, 13:58

Il semble qu'en effet la fonction Text( ait un "effet de bord", car peu importe ce qu'on souhaite afficher, le même effet persiste, y compris en enlevant toute présence de startTmr du programme.

C'est étrange car ce n'est pas la première fois que j'utilise du texte et de l'aléatoire dans un programme, exemple : http://ti-pla.net/a1495596

Après un petit test, je vois qu'en fait cela dépend de l'emplacement de Text( dans le programme. Cela rappelle getkey qui ne fonctionne pas lorsque Text( n'est pas loin dans le même programme.
Donc Text( a vraiment des effet de bords dérangeants...

Merci de vos réponses :)
Maths, fractales, géométrie, packs de levels Oiram, jeux, physique, ... : ici

ImageImage
Avatar de l’utilisateur
UnCurieuxProgrammeur
Niveau 11: LV (Légende Vivante)
Niveau 11: LV (Légende Vivante)
Prochain niv.: 23.7%
 
Messages: 367
Images: 2
Inscription: 19 Mai 2017, 18:20
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: Prépa scientifique 1A


Retourner vers TI-Basic

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 11 invités

-
Rechercher
-
Social TI-Planet
-
Sujets à la une
Comparaisons des meilleurs prix pour acheter sa calculatrice !
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
Phi NumWorks jailbreak
123
-
Faire un don / Premium
Pour plus de concours, de lots, de tests, nous aider à payer le serveur et les domaines...
Faire un don
Découvrez les avantages d'un compte donateur !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partenaires et pub
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
1923 utilisateurs:
>1909 invités
>9 membres
>5 robots
Record simultané (sur 6 mois):
6892 utilisateurs (le 07/06/2017)
-
Autres sites intéressants
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)