2 arrays vergelijken

Status
Niet open voor verdere reacties.

Maaarten

Gebruiker
Lid geworden
27 aug 2009
Berichten
52
Hallo ik ben het spelletje mastermind aan het maken. De gebruiker moet de juiste combinatie proberen te raden. Als de geraden kleurtjes juist zijn(ook op juiste plaats) toon hij het aantal juiste in zwarte bolletjes. Als de gebruiker een getal raad dat erin voorkomt maar dat het nog niet op de juiste plaats staat, moet het programma dat aantal in witte bolletjes tonen.
Ik zit vast op het tonen van de witte bolletjes.


Dit heb ik voor de zwarte bolletjes.
Code:
 Dim marriteraden(3) As Integer
 Private Sub controleer()
        Dim arrgeraden(3) As Integer
        Dim strjuistegetal As Integer = 0
        Dim strgeradengetallen As Integer = 0
        arrgeraden = MastermindPionnenVeld1.geefKleurIndexenPionnen
        For igetal As Integer = 0 To marriteraden.Length - 1
            If marriteraden(igetal) = arrgeraden(igetal) Then
                strjuistegetal = arrgeraden(igetal)
                strgeradengetallen = strgeradengetallen + 1
            End If

        Next
pnlcontroleer.LaatsteRij.plaatsZwartePinnen(strgeradengetallen)
Dit heb ik voor de witte bolletjes maar dit is redelijk fout
Code:
 Dim iwittepionnen As Integer
        For igetal As Integer = 0 To marriteraden.Length - 1
            For igetal2 As Integer = 0 To arrgeraden.Length - 1

                If arrgeraden(igetal2) = marriteraden(igetal) Then
                    iwittepionnen = iwittepionnen + 1
                End If
            Next
        Next
        pnlcontroleer.LaatsteRij.plaatsWittePinnen(iwittepionnen)

Hopelijk kan mij iemand helpen met het controleren van deze arrays
Alvast bedankt
 
Bedankt maar het is niet echt wat ik zoek. Op uw link controleren ze of 2 arrays volledig gelijk zijn aan elkaar. Ik zoek eigenlijk iets waarbij hij de arrays controleert op elementen die gelijk zijn maar niet op de juiste plaats staan.

bv array1=1-0-2-3
array2=1-1-3-2

mijn uitkomst zou dan 1 zwartbolletje en 2 witte bolletjes moeten zijn
 
Dat ik de reactie geplaatst had dacht ik al dat het niet helemaal was wat je zocht. :rolleyes:

Waarschijnlijk heb je hier meer aan:
Code:
 Private Sub CheckArray()

        Dim invoer() = {1, 0, 2, 3}
        Dim uitkomst() = {1, 1, 3, 2}

        Dim i = 0
        For Each getal In invoer

            If getal = uitkomst(i) Then
                Response.Write("zwart bol <br />")
            Else
                If uitkomst.Contains(getal) Then
                    Response.Write("witte bol <br />")
                End If
            End If

            i = i + 1
        Next

    End Sub

Kan misschien nog wat beter, maar volgens mij heb je hier wel precies wat je wilt...
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan