トラック
/
Python
Python
/
演習
/
ゴーストがむしゃむしゃ食べるアーケードゲーム
ゴーストがむしゃむしゃ食べるアーケードゲーム

ゴーストがむしゃむしゃ食べるアーケードゲーム

学習演習

はじめに

Pythonでは、真偽値はbool型で表されます。bool型はintのサブクラスです。この型にはTrueとFalseの2つの値しかありません。これらの値は変数に代入できます。

>>> true_variable = True
>>> false_variable = False

and、or、not演算子を使うと、真偽値の式を評価できます。

>>> 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

説明

この演習では、1980年代の名作アーケードゲーム、Pac-Manのルールをいくつか実装します。

実装するルールは4つあり、どれもゲームの状態に関するものです。

引数がどのように渡されるかは気にしなくてかまいません。引数を組み合わせて、意図した結果を返すことだけに集中しましょう。

1. Pac-Manがゴーストを食べられるかどうかを定義する

eat_ghost()関数を定義します。この関数は2つの入力(Pac-Manがパワーエサを食べている最中かどうか と Pac-Manがゴーストに触れているかどうか)を取り、Pac-Manがゴーストを食べられるかどうかを真偽値で返します。関数は、Pac-Manがパワーエサを食べている最中で、かつゴーストに触れているときだけTrueを返すようにします。

>>> eat_ghost(False, True)
...
False

2. Pac-Manが得点したかどうかを定義する

score()関数を定義します。この関数は2つの入力(Pac-Manがパワーエサに触れているかどうか と Pac-Manがドットに触れているかどうか)を取り、Pac-Manが得点したかどうかを真偽値で返します。関数は、Pac-Manがパワーエサかドットに触れているときにTrueを返すようにします。

>>> score(True, True)
...
True

3. Pac-Manが負けるかどうかを定義する

lose()関数を定義します。この関数は2つの入力(Pac-Manがパワーエサを食べている最中かどうか と Pac-Manがゴーストに触れているかどうか)を取り、Pac-Manが負けるかどうかを真偽値で返します。関数は、Pac-Manがゴーストに触れていて、パワーエサを食べている最中でないときにTrueを返すようにします。

>>> lose(False, True)
...
True

4. Pac-Manが勝つかどうかを定義する

win()関数を定義します。この関数は3つの入力(Pac-Manがすべてのドットを食べたかどうか、Pac-Manがパワーエサを食べている最中かどうか、Pac-Manがゴーストに触れているかどうか)を取り、Pac-Manが勝つかどうかを真偽値で返します。関数は、Pac-Manがすべてのドットを食べていて、かつパート3で定義したルールで負けていないときにTrueを返すようにします。

>>> win(False, True, False)
...
False
GitHubで編集する リンクは新しいウィンドウまたはタブで開きます
Python Exercism

ゴーストがむしゃむしゃ食べるアーケードゲームを始める準備はできましたか?

Exercismに登録すれば、17個のコンセプト146個の演習、そして本物の人間によるメンタリングとともに、Pythonを学んでマスターできます。すべて無料です。