#/usr/bin/perl use strict; print "What's your name Player1?: "; my $player1 = ; chomp $player1; print "\nWhat's your name Player2?: "; my $player2 = ; chomp $player2; if ($player1 eq $player2) { $player2 = $player2."2"; } my @field = ("_", "_", "_", "_", "_", "_", "_", "_", "_", "_"); my @valids = (1, 2, 3, 4, 5, 6, 7, 8, 9); my $name = $player1; my $roundcount = 1; my $choose; my $stone = 'x'; my $win = 0; my $othername = $player2; my $tmpname; my $stone2 = 'o'; my $tmpstone; my $valid; system("cls"); while ($roundcount <= 9 ) { print "|$field[7]|$field[8]|$field[9]| |7|8|9|\n"; print "|$field[4]|$field[5]|$field[6]| |4|5|6|\n"; print "|$field[1]|$field[2]|$field[3]| |1|2|3|\n"; print "\n$name your turn\n"; print "In which field do you want to set? "; $choose = ; chomp $choose; if(grep $_ eq $choose, @valids) { $valid = 1; } else { $valid = 0; } if ($field[$choose] ne '_') { if ($field[$choose] eq $stone) { print "you had set here before\n"; } else { print "$othername had set here before\n"; } $valid = 0; } else { $field[$choose] = $stone; } if ($field[1] eq $stone and $field[2] eq $stone and $field[3] eq $stone) { $win = 1; } elsif ($field[4] eq $stone and $field[5] eq $stone and $field[6] eq $stone) { $win = 1; } elsif ($field[7] eq $stone and $field[8] eq $stone and $field[9] eq $stone) { $win = 1; } elsif ($field[1] eq $stone and $field[4] eq $stone and $field[7] eq $stone) { $win = 1; } elsif ($field[2] eq $stone and $field[5] eq $stone and $field[8] eq $stone) { $win = 1; } elsif ($field[3] eq $stone and $field[6] eq $stone and $field[9] eq $stone) { $win = 1; } elsif ($field[1] eq $stone and $field[5] eq $stone and $field[9] eq $stone) { $win = 1; } elsif ($field[3] eq $stone and $field[5] eq $stone and $field[7] eq $stone) { $win = 1; } if ($win eq 1) { last; } $roundcount++; print "$win\n$stone\n$name\n$roundcount\n"; if ( $valid eq 1) { $tmpname = $name; $name = $othername; $othername = $tmpname; $tmpstone = $stone; $stone = $stone2; $stone2 = $tmpstone; system("cls"); } else { $roundcount--; } } print "|$field[7]|$field[8]|$field[9]| |7|8|9|\n"; print "|$field[4]|$field[5]|$field[6]| |4|5|6|\n"; print "|$field[1]|$field[2]|$field[3]| |1|2|3|\n"; if ($win eq 1) { print "Congratulations $name you win"; } else { print "--->DRAW<---"; } __END__