Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- use warnings;
- use strict;
- my $state = "PHASE1";
- my $die1 = "";
- my $die2 = "";
- my $result = "";
- my $rollCount = "0";
- my $point = "";
- my $tries = 10;
- my @wins = "";
- my @losses = "";
- $losses[0] = 0;
- foreach (0 .. 100) { #Arrayinitialisierung einfach damit der nicht über einen Wert stolpert der nicht initialisiert ist und dann Warnungen ausspuckt, kann ignoriert werden
- $wins[$_] = 0;
- }
- #print "Wie viele Runden moechtest du spielen?\n";
- #$tries = <STDIN>;
- for (my $i = 0; $i < $tries; $i++){
- while ($state eq "PHASE1") { #Phase 1
- $result = rollDie();
- if ($result == 7 or $result == 11){
- $state = "RESET";
- $rollCount++;
- $wins[$rollCount] = $wins[$rollCount] + 1; #Arrayinkrementierung hier einfügen
- print "\nDu hast mit einer $result gewonnen!"; #Gewonnen
- print "Spiele nach dem ersten Wurf gewonnen: $wins[$rollCount]\n";
- }
- if ($result == 2 or $result == 3 or $result == 12){
- $state = "RESET";
- $losses[$rollCount]++;
- print "\nDu hast mit einer $result verloren!"; #Verloren
- } elsif ($result != 2 && $result != 3 && $result != 12 && $result != 7 && $result != 11) {
- $rollCount++;
- $point = $result;
- $state = "PHASE2";
- #print "Erster Wurf: $result\n";
- }
- }
- while ($state eq "PHASE2"){ #Phase 2
- $result = rollDie();
- #print "Zwischenergebnis: $result\n";
- if ($result == $point) { #Gewonnen
- $state = "RESET";
- $wins[$rollCount]++;
- print "\nDu hast deinen vorherigen Wurf nach $rollCount Versuchen wiederholt und damit gewonnen!\nGlueckwunsch!\n";
- }
- if ($result == 7) { #Verloren
- $state = "RESET";
- $losses[$rollCount]++;
- #print "Endergebnis: $result\n";
- #print "Vorgabe: $point\n";
- print "\nDu hast es nicht geschafft die Vorgabe zu wiederholen und verloren, da du nach $rollCount Versuchen eine 7 gewuerfelt hast!\nBetter luck next time!\n";
- } else {
- $rollCount++;
- }
- }
- if ($state eq "RESET"){
- $state = "PHASE1";
- }
- }
- #for (my $i = 1; $i >= $#wins; $i++) {
- # print "Spiele beim $i. Versuch gewonnen: $wins[$i]\n";
- #}
- sub rollDie {
- $die1 = 1 + int (rand(6));
- $die2 = 1 + int (rand(6));
- my $sum = $die1 + $die2;
- return $sum;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement