Tirer aléatoirement en VB

baass -  
 carter -
Bonjour,
Je dois créer un jeux de scrabble en Visual Basic.
Je n'arrive pas a créer un programme qui va tirer au hasard 7 lettres dans un tableau contenant l'ensemble des lettres au scrabble et ensuite la supprimer du tableau.
Merci bien.
Configuration: Mac OS X
Safari 531.9

7 réponses

  1. baass
     
    Petite rectification
    Je travaille sur un environnement Windows.
    0
  2. nautilus1995 Messages postés 338 Date d'inscription   Statut Membre Dernière intervention   564
     
    tu fait un codage pour une séléction aléatoire et ensuite tu l'applique à tes lettres de scrabble !
    0
  3. progggg Messages postés 336 Statut Membre 23
     
    System.Random ?
    0
  4. baass
     
    Oui je souhaite utiliser un algorithme basé sur un random
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. progggg Messages postés 336 Statut Membre 23
     
    Donc tu extrait des lettres de quel type de tableau ?
    0
  7. moiced59 Messages postés 1161 Statut Membre 60
     
    bonjour

    tu peux utiliser une requete qui range aleatoirement toutes t letttre et toi tu vas chercher les 7 premieres
    0
  8. carter
     
    Très cher ami ami, voici la solution à ton pb:

    Dim t() As Char = {"E", "E", "E", "E", "E", "E", "E", "E", "E", "E", "E", "E", "E", "E", "E", "A", "A", "A", "A", "A", "A", "A", "A", "A", "I", "I", "I", "I", "I", "I", "I", "I", "N", "N", "N", "N", "N", "N", "O", "O", "O", "O", "O", "O", "R", "R", "R", "R", "R", "R", "S", "S", "S", "S", "S", "S", "T", "T", "T", "T", "T", "T", "U", "U", "U", "U", "U", "U", "L", "L", "L", "L", "L", "D", "D", "D", "G", "G", "M", "M", "M", "B", "B", "C", "C", "P", "P", "F", "F", "H", "H", "V", "V", "J", "Q", "K", "W", "X", "Y", "Z"}
    Dim o, k, x, i As Byte

    'Pour piocher 7 lettres dans le tableau t() et les écrire dans une textbox appelée lettre1

    For x = 1 To 7
    i = Int((100 * Rnd()))
    If t(i) >= "A" And t(i) <= "Z" Then
    lettre1.text += t(i)
    t(i) = "-"
    End If
    Next

    'ou alors, parce que'au fur et à mesure que tu pioches, il y a des lettres et "-"

    For x = 1 To 7
    Do
    i = Int((100 * Rnd()))
    Loop Until t(i) >= "A" And t(i) <= "Z" 'on est sûrs de ne pas tomber sur les "-", et risquer d'avoir moins de sept lettres
    lettre1.Text += t(i)
    t(i) = "-"
    Next

    Je pense que tu n'auras plus de pb après ça ;)
    0