Nombre aléatoire [Résolu]

kakahouette 3 Messages postés mardi 22 février 2011Date d'inscription 4 juin 2011 Dernière intervention - 31 mai 2011 à 14:43 - Dernière réponse : kakahouette 3 Messages postés mardi 22 février 2011Date d'inscription 4 juin 2011 Dernière intervention
- 31 mai 2011 à 15:03
Bonjour à tous,

je souhaiterai afficher dans une textbox un nombre aléatoire mais pas si aléatoire que ça.
J'utilise visual studio 2008.
Ce nombre doit être 1,2,3,4,5,6,7,8,9,25,50,75 ou 100.
J'ai cherché sur google mais je n'ai pas trouvé grand chose à part mettre ces chiffres dans un tableau et ensuite faire un Rnd sur ce tableau. Mais cela ne fonctionne pas.

voici le code:
Public Class Form1

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim tableau(14)
Dim i As Integer
Dim valeur, valeur2 As Integer ' valeur3, valeur4
For i = 0 To 8
tableau(i) = i + 1
Next i
tableau(9) = 25
tableau(10) = 50
tableau(11) = 75
tableau(12) = 100


'Button1.Visible = False
Randomize()
valeur = Int(Rnd() * 899) + 100
TextBox1.Text = valeur
Randomize(tableau(i))
valeur2 = Int( Rnd() * tableau(i))
TextBox2.Text = valeur2

'valeur3 = CInt(Rnd() * 9 + 1) Or Rnd(25) Or Rnd(50)
'TextBox4.Text = valeur3
'valeur4 = CInt(Rnd(25) Or Rnd(50))
'TextBox5.Text = valeur4

End Sub

End Class


Merci d'avance pour votre aide
Afficher la suite 

Votre réponse

3 réponses

Meilleure réponse
4u4me4us 781 Messages postés lundi 22 janvier 2007Date d'inscription 30 octobre 2013 Dernière intervention - 31 mai 2011 à 14:52
3
Merci
Pour commencer ton tableau de (14) va de la case 0 à la case 13 et tu ne mets des valeur que de la case 0 à la case 12 donc la case 13 et vide ce qui va te donner des erreur.

Je pense que toute la partie

'Button1.Visible = False
Randomize()
valeur = Int(Rnd() * 899) + 100
TextBox1.Text = valeur
Randomize(tableau(i))
valeur2 = Int( Rnd() * tableau(i))
TextBox2.Text = valeur2

'valeur3 = CInt(Rnd() * 9 + 1) Or Rnd(25) Or Rnd(50)
'TextBox4.Text = valeur3
'valeur4 = CInt(Rnd(25) Or Rnd(50))
'TextBox5.Text = valeur4

est à supprimer.

Il faut que tu fasse un randome de 0 à 13 comme le case de ton tableau. Ansi tu auras un code du style

i = random (De 0 à 13)

Msgbox "La valeur aléatoire vaut " & tableau(i)

Merci 4u4me4us 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 121 internautes ce mois-ci

Commenter la réponse de 4u4me4us
cs_jopop 1540 Messages postés lundi 26 mai 2003Date d'inscription 1 août 2013 Dernière intervention - 31 mai 2011 à 14:51
0
Merci
Salut,

je pense que l'idée c'est de tiré un chiffre au hasard, compris entre 0 et 12, puis de s'en servir d'index pour atteindre la valeur associée dans le tableau.
Un truc du genre :
Dim idx As Integer
Randomize() 
idx = Int(tableau.Length * Rnd())
TextBoxV.Text = tableau(idx)
Commenter la réponse de cs_jopop
kakahouette 3 Messages postés mardi 22 février 2011Date d'inscription 4 juin 2011 Dernière intervention - 31 mai 2011 à 15:03
0
Merci
Merci beaucoup voila le code et ça fonctionne.

Public Class Form1

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim tableau(12)
Dim i As Integer
Dim valeur As Integer


For i = 0 To 8
tableau(i) = i + 1
Next i
tableau(9) = 25
tableau(10) = 50
tableau(11) = 75
tableau(12) = 100



End Sub

End Class
Commenter la réponse de kakahouette

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.