Archief - [PROG]VB.NET Controleren Op Dubbel

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

Trax^

Legacy Member
Code:
        Dim lotto(11, 5) As Integer
        Dim i, j, k As Integer
        Dim strLotto As String
        strLotto = ""
        Randomize()
        For i = 0 To 11
            lotto(i, 0) = Int(Rnd() * 42 + 1)
            For j = 1 To 5
                lotto(i, j) = Int(Rnd() * 42 + 1)
                'test op dubbels
[B]                For k = 0 To j - 1
                    If lotto(i, k) = lotto(i, j) Then
                        j -= 1
                    End If
                Next[/B]
            Next
        Next


        For i = 0 To 11
            For j = 0 To 5
                strLotto &= lotto(i, j).ToString & Space(3)
            Next
            strLotto &= vbNewLine
        Next
        txtLotto.Text = strLotto
    End Sub

Dees is men die ne quick pick genereert. Nu moet ik ook zien da em controleert op dubbels. er moge geen dubbel getalle voorkome. ma da werkt nie. wa moet ik aanpasse?

pieta

Legacy Member
wel, ik heb ook iets soortgelijks meten maken, hoe ik het deed:
ik maak een array van booleans aan, en die staan allemaal op true,
als mn booleanarray(random) true is, zet ik die op vals en geef ik dq getal terug, en anders reip ik terug mn method aan...

MacK

Legacy Member
Steek alle mogelijk getallen in een arraylist. Dan kiest ge random een index, en verwijdert ge het getal op die index van uw arraylist. Dat is dan uw getal voor die iteratie. De volgende keer dat je dan random een index kiest, zit dat getal niet meer in die arraylist..

natuurlijk moet uw range van uw random zoiets zijn: rnd.Next(arraylist.size());

[AiR] LeViaTHaN

Legacy Member
ArrayList heeft een Contains method, hiermee kan je zien of een object al in de lijst voorkomt.

AsinuS

Legacy Member
MacK zei:
natuurlijk moet uw range van uw random zoiets zijn: rnd.Next(arraylist.size());

ik dacht u net op een fout te betrappen, maar toen stond er dat :bow:

op die manier simuleert ge ook den echte lotto he .. den bokaal is uwen array en ge pakt er altijd enen af, de kansen zijn dan ook gelijk, in tegenstelling tot als ge steeds uit 26 (of hoeveel getallen zijn dat..) getallen zou trekken en dan pas controleren of het al getrokken is

grtz
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan