Python :: Aufgabe #86 :: Lösung #5

9 Lösungen Lösungen öffentlich
#86

Stein, Papier, Schere, Echse, Spock

Anfänger - Python von Energy - 24.09.2015 um 15:22 Uhr
Programmiere das Spiel Stein, Papier, Schere, Echse, Spock, sodass man selbst eine Figur auswählen kann und der Computer eine zufällige Figur auswählt. Ermittele dann, wer diese Partie gewonnen hat.
#5
vote_ok
von chrigu78 (80 Punkte) - 02.03.2016 um 17:03 Uhr
Quellcode ausblenden Python-Code
import random
print 'Stein, Schere, Papier'
print '---------------------'
print 'Stein: Schleift Schere, zerquetscht Echse'
print 'Schere: Schneidet Papier, köpft Echse'
print 'Papier: Bedeckt Stein, widerlegt Spock'
print 'Spock:  Zertrümmert Schere, verdampft Stein'
print 'Echse: Frisst Papier, vergiftet Spock'
print '\nDu kannst zwischen Stein, Schere, Papier, Echse und Spock wählen.'
while True:
    a = raw_input('Waehle Deine Figur: ')
    a = a.lower()
    c = random.randint(0,4)
    #d = ''
    #e = ''
    if c == 0:
        d = 'Stein'
    if c == 1:
        d = 'Schere'
    if c == 2:
        d = 'Papier'
    if c == 3:
        d = 'Spock'
    if c == 4:
        d = 'Echse'
    if a == 'stein':
        if c == 1 or c == 4:
            e = 'gewonnen'
        elif c == 0:
            e = 'unentschieden'
        else:
            e = 'verloren'
    if a == 'schere':
        if c == 2 or c == 4:
            e = 'gewonnen'
        elif c == 1:
            e = 'unentschieden'
        else:
            e = 'verloren'
    if a == 'papier':
        if c == 0 or c == 3:
            e = 'gewonnen'
        elif c == 2:
            e = 'unentschieden'
        else:
            e = 'verloren'
    if a == 'spock':
        if c == 0 or c == 1:
            e = 'gewonnen'
        elif c == 3:
            e = 'unentschieden'
        else:
            e = 'verloren'
    if a == 'echse':
        if c == 2 or c == 3:
            e = 'gewonnen'
        elif c == 4:
            e = 'unentschieden'
        else:
            e = 'verloren'
    a = a.capitalize()
    #print '\tDeine Figur: %r' % (a)
    print 'Dein Gegner: ', d
    print 'Dein Ergebnis: ', e, '!'
    f = raw_input('Noch eine Runde? (j/n)> ')
    if f == 'j':
        continue
    if f == 'n':
        print 'Spiel beendet!'
        break
    else:
        f = raw_input('Eingabe nicht verstanden. Bitte (j/n) eingeben> ')

Kommentare:

Für diese Lösung gibt es noch keinen Kommentar

Bitte melden Sie sich an um eine Kommentar zu schreiben.
Kommentar schreiben