LoginSignup
1
2

More than 3 years have passed since last update.

Javaで作る年齢当てゲーム

Last updated at Posted at 2020-06-03

とあるテレビ番組を見ていて

BSで「プロスタ」というScratchを題材にした子供向けプログラミング教育番組が
放送されているのを拝見。
私が見た回の中で、安藤先生という方の年齢を少ない質問数で当ててみようという
コーナーがあったのでその部分を参考にJavaで年齢当てゲームを作ってみました。

Main.java
package andouteacher;

import java.util.Random;
import java.util.Scanner;

// 安藤先生の年齢を当てるゲームです
// 指定された回答数の中で年齢を当てましょう
// コツは2分探索です
// 効率の良い答え方で候補を絞っていきましょう

public class Main {
    public static void main(String[] args) {
        Random rnd = new Random();
        int age = rnd.nextInt(80);
        int limit = 5;

        Scanner sc = new Scanner(System.in);
        System.out.println("安藤先生は何歳に見えますか?");
        System.out.println("回答するチャンスは"+ limit +"回までです");
        for(int i = 0; i < limit; i++) {
            int answer = sc.nextInt();
            if(answer == age) {
                System.out.println("正解です");
                break;
            } else if(answer > age){
                System.out.println("それよりも年下です");
            } else {
                System.out.println("それよりも年上です");
            }
        }
        System.out.println("正解は" + age + "歳でした");
    }
}

番組内では質問できる回数に制限はありませんでしたが、このプログラムでは
回数を5回までに制限しています。int型のlimitという変数がそれにあたります。
すごくシンプルなゲームですがプレイしてみると意外に楽しめます。
興味を持たれた方は是非、このコードを実行して遊んでみてください(^-^)

追記

ちなみにですが安藤先生は「70歳以上ですか?」と質問されると少しションボリします。
(これは番組内であったやりとりの話であって、このプログラムには一切関係ありません・・・)

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2