Kurzusok
/
Elixir
Elixir
/
Feladatok
/
Pacman szabályai
Pacman szabályai

Pacman szabályai

Tanulófeladat

Bevezetés

Boolean-ok

Az Elixir az igaz és hamis értékeket a Boolean típussal ábrázolja. Csak két érték van: true és false. Ezek az értékek egy változóhoz köthetők:

true_variable = true
false_variable = false

Szigorú Boolean-kifejezéseket értékelhetünk ki a and/2, or/2 és not/1 operátorokkal.

true_variable = true and true
false_variable = true and false

true_variable = false or true
false_variable = false or false

true_variable = not false
false_variable = not true

Amikor olyan függvényt írsz, amely Boolean értéket ad vissza, szokás a függvénynév végére egy ?-t tenni. Ugyanezt a konvenciót alkalmazhatod azoknál a változóknál is, amelyek Boolean értékeket tárolnak.

def either_true?(a?, b?) do
  a? or b?
end

Utasítások

Ebben a feladatban a klasszikus Pac-Man játék néhány szabályát kell Elixir-függvényekké alakítanod.

Négy szabályt kell lefordítanod, amelyek mind a játék állapotaihoz kapcsolódnak.

Ne foglalkozz azzal, hogyan származnak az argumentumok, csak arra összpontosíts, hogy az argumentumok kombinálásával a kívánt eredményt add vissza.

1. Határozd meg, hogy Pac-Man megeszik-e egy szellemet

Definiáld a Rules.eat_ghost?/2 függvényt, amely két argumentumot vár (hogy Pac-Mannek aktív-e az energiagolyója, és hogy Pac-Man éppen hozzáér-e egy szellemhez), és egy boolean értéket ad vissza arról, hogy Pac-Man meg tudja-e enni a szellemet. A függvény csak akkor adjon vissza igazat, ha Pac-Mannek aktív az energiagolyója, és éppen hozzáér egy szellemhez.

Rules.eat_ghost?(false, true)
# => false

2. Határozd meg, hogy Pac-Man pontot szerez-e

Definiáld a Rules.score?/2 függvényt, amely két argumentumot vár (hogy Pac-Man éppen hozzáér-e egy energiagolyóhoz, és hogy Pac-Man éppen hozzáér-e egy ponthoz), és egy boolean értéket ad vissza arról, hogy Pac-Man pontot szerzett-e. A függvény akkor adjon vissza igazat, ha Pac-Man éppen hozzáér egy energiagolyóhoz vagy egy ponthoz.

Rules.score?(true, true)
# => true

3. Határozd meg, hogy Pac-Man veszít-e

Definiáld a Rules.lose?/2 függvényt, amely két argumentumot vár (hogy Pac-Mannek aktív-e az energiagolyója, és hogy Pac-Man éppen hozzáér-e egy szellemhez), és egy boolean értéket ad vissza arról, hogy Pac-Man veszít-e. A függvény akkor adjon vissza igazat, ha Pac-Man éppen hozzáér egy szellemhez, és nincs aktív energiagolyója.

Rules.lose?(false, true)
# => true

4. Határozd meg, hogy Pac-Man nyer-e

Definiáld a Rules.win?/3 függvényt, amely három argumentumot vár (hogy Pac-Man megette-e az összes pontot, hogy Pac-Mannek aktív-e az energiagolyója, és hogy Pac-Man éppen hozzáér-e egy szellemhez), és egy boolean értéket ad vissza arról, hogy Pac-Man nyer-e. A függvény akkor adjon vissza igazat, ha Pac-Man megette az összes pontot, és a 3. részben meghatározott argumentumok alapján nem veszített.

Rules.win?(false, true, false)
# => false
Szerkesztés GitHubon A hivatkozás új ablakban vagy lapon nyílik meg
Elixir Exercism

Készen állsz elkezdeni a(z) Pacman szabályai feladatot?

Iratkozz fel az Exercism-re, hogy megtanuld és elsajátítsd a(z) Elixir nyelvet 58 fogalom168 feladat segítségével, valódi emberi mentorálással, mindez ingyen.