Jump to content
Roulette Forum

doubleM

Member
  • Gesamte Inhalte

    2
  • Benutzer seit

  • Letzter Besuch

Alle erstellten Inhalte von doubleM

  1. Sorry, das war nicht Dannys sondern Lupus' Vorschlag...
  2. Huhu zusammen! Ich habe Dannys "Strategie" als Excel-Makro programmiert. Die Ergebnisse gehen recht fix ins Minus, aber probiert mal selbst. Wenn ihr das Makro startet, werden in der ersten Spalte untereinander in den jeweiligen Zeilen die Anzahl der gefallenen Zahlen in einer Partie angezeigt. In der 3 Spalte steht der Saldo, der mit der Partie erzielt wurde. Dieses Feld wird nicht gelöscht nach Neustart des Makros, damit man mehrere durchgänge fahren kann und damit sieht, wie sich der Saldo ändert. Eine Message-Box informiert auch, in welcher Phase getroffen wurde. Ich weiß, ist nicht ausgereift das Teil, aber zum Testen reicht es allemal. Vorgehensweise: 1. Quellcode markieren und mit STRG+C in die Zwischenablage kopieren. 2. Excel öffnen 3. Im Menü unter Extras -> Makro -> Visual Basic Editor auswählen Wenn man im VBA-Editor ist, schauen, ob der Projekt-Explorer eingeblendet ist. Falls nein, im Menü unter Ansicht -> Projekt-Explorer aktivieren. 4. Im Projekt-Explorer rechte Maustaste drücken: Einfügen -> Modul 5. Rechts öffnet sich nun ein Bereich, indem wir den Quellcode mit STRG-V einfügen. 6 dann einfach mit F5 oder Menü: Ausführen -> Sub/UserForm ausführen Fertig. Hier der Code: Option Explicit Public Sub strategie() Dim zufi As Integer Dim phase As Byte Dim zahlen(37) As Integer Dim i, j As Byte Dim dreier As Byte Dim vierer As Byte Dim fuenfer As Byte Dim sechser As Byte Dim siebener As Byte Dim durchgang As Byte Dim runden As Long Dim phase1ok, phase2ok, phase3ok, phase4ok, phase5ok, phase6ok, phase7ok As Boolean Dim satz(7) As Byte Randomize Timer phase = 0 phase1ok = True phase2ok = False phase3ok = False phase4ok = False phase5ok = False phase6ok = False phase7ok = False For i = 1 To 36 Cells(i, 1) = "" Next While True runden = runden + 1 zufi = Int(37 * Rnd(1)) If zufi <> 0 Then Cells(zufi, 1) = Cells(zufi, 1) + 1 zahlen(zufi) = zahlen(zufi) + 1 If phase = 1 And phase1ok = True Then For i = 1 To 5 If satz(i) = zufi Then ' Treffer in Phase 1 MsgBox "Treffer in Phase 1" Cells(1, 3) = Cells(1, 3) + 31 Exit Sub End If Next i Cells(1, 3) = Cells(1, 3) - 5 ' kein Treffer ElseIf phase = 2 And phase2ok = True Then For i = 1 To 4 If satz(i) = zufi Then ' Treffer in Phase 2 MsgBox "Treffer in Phase 2" Cells(1, 3) = Cells(1, 3) + 64 Exit Sub End If Next i Cells(1, 3) = Cells(1, 3) - 8 ' kein Treffer ElseIf phase = 3 And phase3ok = True Then For i = 1 To 3 If satz(i) = zufi Then ' Treffer in Phase 3 MsgBox "Treffer in Phase 3" Cells(1, 3) = Cells(1, 3) + 99 Exit Sub End If Next i Cells(1, 3) = Cells(1, 3) - 9 ' kein Treffer ElseIf phase = 4 And phase4ok = True Then For i = 1 To 2 If satz(i) = zufi Then ' Treffer in Phase 4 MsgBox "Treffer in Phase 4" Cells(1, 3) = Cells(1, 3) + 136 Exit Sub End If Next i Cells(1, 3) = Cells(1, 3) - 8 ElseIf phase = 5 And phase5ok = True Then If satz(1) = zufi Then ' Treffer in Phase 2 MsgBox "Treffer in Phase 5" Cells(1, 3) = Cells(1, 3) + 175 Exit Sub End If Cells(1, 3) = Cells(1, 3) - 5 ' kein Treffer End If ' Zahlen untersuchen dreier = 0 vierer = 0 fuenfer = 0 sechser = 0 siebener = 0 For i = 0 To 36 If zahlen(i) > 6 Then siebener = siebener + 1 If zahlen(i) > 5 Then sechser = sechser + 1 If zahlen(i) > 4 Then fuenfer = fuenfer + 1 If zahlen(i) > 3 Then vierer = vierer + 1 If zahlen(i) > 2 Then dreier = dreier + 1 Next ' neue Phase bestimmen If phase = 0 Then If dreier >= 5 And phase1ok = True Then phase = 1 ElseIf phase = 1 Then If vierer >= 4 And phase2ok = True Then phase = 2 ElseIf phase = 2 Then If fuenfer >= 3 And phase3ok = True Then phase = 3 ElseIf phase = 3 Then If sechser >= 2 And phase4ok = True Then phase = 4 ElseIf phase = 4 Then If siebener >= 1 And phase5ok = True Then phase = 5 End If ' Phasen If phase = 1 And phase1ok = True Then durchgang = durchgang + 1 If durchgang = 5 Then durchgang = 0 phase1ok = False phase2ok = True Else ' die zu setzenden Zahlen holen If durchgang = 1 Then j = 1 For i = 0 To 36 If zahlen(i) >= 3 Then satz(j) = i j = j + 1 End If Next i End If End If ElseIf phase = 2 And phase2ok = True Then durchgang = durchgang + 1 If durchgang = 5 Then durchgang = 0 phase2ok = False phase3ok = True Else ' die zu setzenden Zahlen holen If durchgang = 1 Then j = 1 For i = 0 To 36 If zahlen(i) >= 4 Then satz(j) = i j = j + 1 End If Next i End If End If ElseIf phase = 3 And phase3ok = True Then durchgang = durchgang + 1 If durchgang = 5 Then durchgang = 0 phase3ok = False phase4ok = True Else ' die zu setzenden Zahlen holen If durchgang = 1 Then j = 1 For i = 0 To 36 If zahlen(i) >= 5 Then satz(j) = i j = j + 1 End If Next i End If End If ElseIf phase = 4 And phase4ok = True Then durchgang = durchgang + 1 If durchgang = 5 Then durchgang = 0 phase4ok = False phase5ok = True Else ' die zu setzenden Zahlen holen If durchgang = 1 Then j = 1 For i = 0 To 36 If zahlen(i) >= 6 Then satz(j) = i j = j + 1 End If Next i End If End If ElseIf phase = 5 And phase5ok = True Then durchgang = durchgang + 1 If durchgang = 5 Then durchgang = 0 phase5ok = False MsgBox "Nichts gewonnen." Exit Sub Else ' die zu setzenden Zahlen holen If durchgang = 1 Then j = 1 For i = 0 To 36 If zahlen(i) >= 7 Then satz(j) = i j = j + 1 End If Next i End If End If End If Wend End Sub
×
×
  • Neu erstellen...