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
2095249

Du scheinst einen AdBlocker zu nutzen. Ich würde mich freuen, wenn du ihn auf dieser Seite deaktivierst und dich davon überzeugst, dass die Werbung hier nicht störend ist.