IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB.NET Discussion :

tirage au sort avec attribution de numéro [Débutant]


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Gestionnaire de parc micro-informatique
    Inscrit en
    Janvier 2022
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations professionnelles :
    Activité : Gestionnaire de parc micro-informatique

    Informations forums :
    Inscription : Janvier 2022
    Messages : 6
    Par défaut tirage au sort avec attribution de numéro
    bonsoir
    Dans le cadre d'une activité associative je dois essayer de trouver une solution pour le tirage des numéro de stands qui doivent être attribués à des noms

    exemple:
    jean 56
    pierre 73
    alain 15
    jean phillipe 18
    etc...
    le nombre de personnes doit toujours être égale aux nombre de stands (si on a 100 personnes on devra attribuer 100 numéro de stands)

    pour le moment ce que j'ai pu faire c'est un tirage aléatoire à partir d'un bouton qui affiche dans un textbox un seul nom à la fois

    ce que je voudrais c'est afficher en cliquant sur le bouton tout les noms contenus dans le fichier de noms dans le textbox et leurs attribuer un numéro(stand) de manière aléatoire

    j'ai attaché un capture du code que j'ai actuellement

    merci d'avance en espérant être assez explicite dans mon post

    Nom : code.JPG
Affichages : 157
Taille : 39,6 Ko

  2. #2
    Expert confirmé
    Avatar de popo
    Homme Profil pro
    Analyste programmeur Delphi / C#
    Inscrit en
    Mars 2005
    Messages
    2 972
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste programmeur Delphi / C#
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 2 972
    Par défaut
    Déjà, si le fichier n'existe pas, quel est l'intérêt de créer un fichier vide ?

    Ensuite, essaie de résoudre un problème à la fois.
    Tu n'as qu'un seul nom parce que tu n'en ajoute qu'un (après ta boucle).

    Commence par afficher tous les noms sans te préoccuper du stand en ajoutant le nom à l'intérieur de ta boucle Do While.
    Une fois que tu auras la liste de nom, tu pourras essayer d'ajouter un numéro de stand.

    Tu vas avoir un autre problème mais on reviendra lorsque tu auras une liste de nom/stand.

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Gestionnaire de parc micro-informatique
    Inscrit en
    Janvier 2022
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations professionnelles :
    Activité : Gestionnaire de parc micro-informatique

    Informations forums :
    Inscription : Janvier 2022
    Messages : 6
    Par défaut
    bonsoir
    merci d'avoir répondu en fait je n’ai que quelques notions superficielles sur la chose d’où la demande d'assistance pour un truc qui ne doit pas être difficile pour qui s'y connait

    j'ai réussi à afficher tout les noms en faisant textbox1.text = IO.File.ReadALLtext(path).

    après je sais pas trop si c'est ce que vous disiez de faire.
    toute aide est bienvenue même avec un autre code différent de celui que j'ai mis en début de post

    merci

  4. #4
    Expert confirmé
    Avatar de popo
    Homme Profil pro
    Analyste programmeur Delphi / C#
    Inscrit en
    Mars 2005
    Messages
    2 972
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste programmeur Delphi / C#
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 2 972
    Par défaut
    Sur le fond, c'est exactement ça.
    Sur la forme, je m'attendais à ce que tu te serves de la boucle Do...Loop Until pour ajouter les noms au fur et à mesure que tu lis le fichier.

    Mais les deux versions se valent.

    Maintenant, il faut parcourir chaque ligne pour y ajouter le stand.
    Avec la version actuelle ces ligne sont dans textbox1.Lines
    Avec la version Do Loop Until, le stand est ajouté à au contenu de la variable "line" et après la boucle textbox.Lines devra être affecté avec le contenu la variable "list"

  5. #5
    Membre Expert Avatar de Thumb down
    Homme Profil pro
    Retraité
    Inscrit en
    Juin 2019
    Messages
    1 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Juin 2019
    Messages : 1 573
    Par défaut
    Bonjour,
    il faut au maximum exploiter les méthode native à VS avant d'implémenter du code.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     Dim noms As List(Of String) = IO.File.ReadAllLines("C:\Myrep\Name.txt").ToList
    pour éviter que le Random retourne toujours les mêmes valeurs il faut l'initialiser avec une valeur pseudo aléatoire.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     Dim Generator As System.Random = New System.Random(System.DateTime.Now.Millisecond)
    pour évier éviter de sélectionner plusieurs fois le même nom il faut le retirer de la liste.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     noms.Remove(noms(i))
    NbStand -= 1
    j'ai utiliser un ListView pour afficher la liste des nom en relation avec leur N° de stand!
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
            If File.Exists("C:\Myrep\Name.txt") Then
                Dim noms As List(Of String) = IO.File.ReadAllLines("C:\Myrep\Name.txt").ToList
                Dim Generator As System.Random = New System.Random(System.DateTime.Now.Millisecond)
                Dim NbStand As Integer = 100
                Dim intWidth As Integer = (ListView1.Width - 5) / 2
                ListView1.Clear()
                ListView1.Columns.Add("Nom", intWidth)
                ListView1.Columns.Add("Stand", intWidth)
                ListView1.View = View.Details
                ListView1.Sorting = SortOrder.Ascending
                Do Until noms.Count = 0 Or NbStand = 0
                    NbStand -= 1
                    Dim i As Integer = Generator.Next(noms.Count - 1)
                    Dim objItem As ListViewItem = ListView1.Items.Add(noms(i))
                    objItem.SubItems.Add(ListView1.Items.Count)
                    noms.Remove(noms(i))
                Loop
            End If
        End Sub
    End Class

  6. #6
    Nouveau membre du Club
    Homme Profil pro
    Gestionnaire de parc micro-informatique
    Inscrit en
    Janvier 2022
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations professionnelles :
    Activité : Gestionnaire de parc micro-informatique

    Informations forums :
    Inscription : Janvier 2022
    Messages : 6
    Par défaut
    bonjour

    merci pour votre sollicitude. cela marche parfaitement
    simple et efficace pour notre utilisation

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [2.x] Tirage au sort avec Symfony
    Par devach dans le forum Symfony
    Réponses: 4
    Dernier message: 08/06/2015, 02h37
  2. [XL-2007] Tirage au sort avec conditions
    Par Pierre77 dans le forum Excel
    Réponses: 3
    Dernier message: 05/09/2014, 12h08
  3. retrouver un tirage au sort avec un numero seed
    Par tiyolx dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 29/03/2014, 22h33
  4. [XL-2007] Tirages au sort avec une contrainte
    Par islande dans le forum Excel
    Réponses: 2
    Dernier message: 29/01/2014, 10h54
  5. [VBA-E] Tirage au sort avec probabilité
    Par clarisse dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 12/05/2006, 11h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo