Problème insoluble

Résolu
yvesdudu Messages postés 48 Date d'inscription jeudi 16 août 2007 Statut Membre Dernière intervention 3 juin 2018 - Modifié le 3 juin 2018 à 19:22
yvesdudu Messages postés 48 Date d'inscription jeudi 16 août 2007 Statut Membre Dernière intervention 3 juin 2018 - 3 juin 2018 à 20:38
Bonjour à tous
je me trouve confronté à un problème incompréhensible de codage qui se traduit par un bug bizarre.
Je suis sous vb6 et directx 7 ( oui c'est dépassé mais on fait encore de jolies choses en se creusant la tète).
Alors voici mon soucis , dans mon code j'ai la sub suivante:

private sub tirage()
randomize
y=int(rnd*100)
if y>=50 then soucoup(0)=true
if y<=30 then soucoup(1)=true
etc
etc
etc pour d'autres valeurs de y ( qui a été déclaré integer en début de code)
end sub

cette sub est appelée dans la boucle du DX donc plusieurs fois par seconde.
Eh bien croyez le ou pas mais toutes les valeurs de y passent sauf le 50 ????


EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ici : ICI

Merci d'y penser dans tes prochains messages.

2 réponses

yvesdudu Messages postés 48 Date d'inscription jeudi 16 août 2007 Statut Membre Dernière intervention 3 juin 2018
3 juin 2018 à 19:13
en réalité c'est pas le nombre 50 qui coince c'est la variable soucoup(4).
Pour poursuivre mes recherches j'ai affiché la variable soucoup(4) à l'écran et je n'ai laissé dans le code de la sub que ce qui suit:
private sub tirage()
soucoup(4)=true
end sub
si je lance l'execution , la variable soucoup(4) reste à false !! c'est a n'y rien comprendre
alors que si je remplace soucoup(4) par soucoup(0 et jusqu'à 3) chaque fois la variable soucoup(0 à 3) passe bien à true !!!
bien sur la variable indexée est bien déclarée au début : public soucoup(5) as booléan.
merci pour votre aide
salutations


--
0
NHenry Messages postés 15112 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 13 avril 2024 159
3 juin 2018 à 19:32
Il nous faudrait plus de code pour juger, ton problème est étrange, mais l'explication doit être logique.
0
yvesdudu Messages postés 48 Date d'inscription jeudi 16 août 2007 Statut Membre Dernière intervention 3 juin 2018
3 juin 2018 à 20:38
Bonsoir,
Merci de vous être penché sur mon problème mais en fait , j'ai trouvé car c'est pas le fonctionnement qui était en cause mais une erreur de ma part dans l'initialisation de la variable.
Comme c'est une grossière erreur il n'est pas nécessaire de commenter cela ne servirait à personne.
encore merci
Cordialement

--
0
Rejoignez-nous