オブジェクト指向を使ったジャンケンゲーム
ジャンケンゲームでは、「グー」「チョキ」「パー」といった手を持っているプレイヤーがいることから、クラスやオブジェクトを使用して、プレイヤーを表すことができます。
以下に、ジャンケンゲームの例を示します。
Player player1 = new Player("Player1");
Player player2 = new Player("Player2");
player1.hand = new Random().Next(3);
player2.hand = new Random().Next(3);
player1.ShowHand();
player2.ShowHand();
int result = (player1.hand - player2.hand + 3) % 3;
if (result == 0)
{
Console.WriteLine("Draw");
}
else if (result == 1)
{
Console.WriteLine($"{player2.name} Win!");
}
else if (result == 2)
{
Console.WriteLine($"{player1.name} Win!");
}
class Player
{
public string name;
public int hand;
public Player(string name)
{
this.name = name;
}
public void ShowHand()
{
if (hand == 0)
{
Console.WriteLine("{0} はグーを出しました", name);
}
else if (hand == 1)
{
Console.WriteLine("{0} はチョキを出しました", name);
}
else if (hand == 2)
{
Console.WriteLine("{0} はパーを出しました", name);
}
}
}
上記の例では、Playerクラスを定義し、nameプロパティとhandプロパティを持っています。handプロパティは0~2の整数を取り、それぞれグー、チョキ、パーを表しています。 ShowHandメソッドはhandプロパティを元に、それぞれのプレイヤーが出した手を出力するものです。 Mainメソッドでは、インスタンスを作成して、手をランダムに出します。その後、どちらのプレイヤーが勝ったかを判定し、結果を出力します。
ジャンケンの結果を判定するために、 (int)(player1.hand – player2.hand + 3) % 3 を使用しています。
ディスカッション
コメント一覧
まだ、コメントがありません