Erstellen Sie eine Funktion, die zwei Zeichenfolgen als Eingabe verwendet und eine einzige Ausgabe für das Ergebnis zurückgibt. Die beliebteste Antwort gewinnt.
Die Regeln von Rock-Paper-Scissors-Lizard-Spock sind:
- Schere schneiden Papier
- Papier bedeckt Stein
- Rock zerquetscht Eidechse
- Eidechse vergiftet Spock
- Spock zerschmettert eine Schere
- Schere enthauptet Eidechse
- Eidechse isst Papier
- Papier widerlegt Spock
- Spock verdampft den Stein
- Rock bricht die Schere
Die Ausgabe für jeden möglichen Eingabefall ist:
winner('Scissors', 'Paper') -> 'Scissors cut Paper'
winner('Scissors', 'Rock') -> 'Rock breaks Scissors'
winner('Scissors', 'Spock') -> 'Spock smashes Scissors'
winner('Scissors', 'Lizard') -> 'Scissors decapitate Lizard'
winner('Scissors', 'Scissors') -> 'Scissors tie Scissors'
winner('Paper', 'Rock') -> 'Paper covers Rock'
winner('Paper', 'Spock') -> 'Paper disproves Spock'
winner('Paper', 'Lizard') -> 'Lizard eats Paper'
winner('Paper', 'Scissors') -> 'Scissors cut Paper'
winner('Paper', 'Paper') -> 'Paper ties Paper'
winner('Rock', 'Spock') -> 'Spock vaporizes Rock'
winner('Rock', 'Lizard') -> 'Rock crushes Lizard'
winner('Rock', 'Scissors') -> 'Rock breaks Scissors'
winner('Rock', 'Paper') -> 'Paper covers Rock'
winner('Rock', 'Rock') -> 'Rock ties Rock'
winner('Lizard', 'Rock') -> 'Rock crushes Lizard'
winner('Lizard', 'Spock') -> 'Lizard poisons Spock'
winner('Lizard', 'Scissors') -> 'Scissors decapitate Lizard'
winner('Lizard', 'Paper') -> 'Lizard eats Paper'
winner('Lizard', 'Lizard') -> 'Lizard ties Lizard'
winner('Spock', 'Rock') -> 'Spock vaporizes Rock'
winner('Spock', 'Lizard') -> 'Lizard poisons Spock'
winner('Spock', 'Scissors') -> 'Spock smashes Scissors'
winner('Spock', 'Paper') -> 'Paper disproves Spock'
winner('Spock', 'Spock') -> 'Spock ties Spock'
Zusätzliche von @Sean Cheshire vorgeschlagene Herausforderung: Zulassen von benutzerdefinierten Listen, z. B. von dieser Site. Mit der n-Item-Liste verliert das Item gegen das vorherige (n-1) / 2 und gewinnt über das folgende (n-1) / 2