概要
今回はjavaでFizzBuzzゲームのコードを書いてみました。
練習用で記述していますのでご承知ください。
ソースコード
実行用クラスです。
Main.java
public class Main {
public static void main(String[] args){
int input_num;
System.out.println("Fizzbuzz-->start");
Cal parts = new Cal();
parts.init();//Fizzbuzzゲームの説明
input_num = parts.get_num();//標準入力で整数値(1-99)を取得する
System.out.println("Fizzbuzz-->input_num:" + input_num);
parts.judge(input_num);//5の倍数:Fizz,5の倍数:Buzz,15の倍数:FizzBuzzかの判定
}
}
設計図クラスです。
Cal.java
import java.util.Scanner;
public class Cal{
//定数ならび文字列の定義
public static final int ERROR_NUM = -1;
public static final int BOTTOM_NUM = 1;
public static final int TOP_NUM = 100;
public static final int FIZZ = 3;
public static final int BUZZ = 5;
public static final int FIZZBUZZ = 15;
public static final String FIZZBUZZ_STR = "FIZZBUZZ";
public static final String FIZZ_STR = "FIZZ";
public static final String BUZZ_STR = "BUZZ";
//Fizzbuzzゲームの説明
public void init(){
String fizzbuzz = String.format("%d times = %s",FIZZBUZZ,FIZZBUZZ_STR);
String fizz = String.format("%d times = %s",FIZZ,FIZZ_STR);
String buzz = String.format("%d times = %s",BUZZ,BUZZ_STR);
System.out.println(fizzbuzz);
System.out.println(fizz);
System.out.println(buzz);
}
//標準入力で整数値(1-99)を取得する
public int get_num(){
int num = ERROR_NUM;
Scanner input = new Scanner(System.in);
while (BOTTOM_NUM > num || TOP_NUM < num) {
System.out.println("Please input 1 - 100:");
num = input.nextInt();
System.out.println("get_num:"+ num);
}
return num;
}
//5の倍数:Fizz,5の倍数:Buzz,15の倍数:FizzBuzzかの判定
public void judge(int input_number){
//15の倍数
if (input_number % FIZZBUZZ == 0) {
String text = String.format("%d>>>%s",input_number,FIZZBUZZ_STR);
System.out.println(text);
}
//3の倍数
else if (input_number % FIZZ == 0){
String text = String.format("%d>>>%s",input_number,FIZZ_STR);
System.out.println(text);
}
//5の倍数
else if (input_number % BUZZ == 0){
String text = String.format("%d>>>%s",input_number,BUZZ_STR);
System.out.println(text);
}
//それ以外の数字
else{
String text = String.format("%d>>>not %s or %s or %s",input_number,FIZZBUZZ_STR,FIZZ_STR,BUZZ_STR);
System.out.println(text);
}
}
}
実行方法です。
Readme.txt
1)上記のMain.java,Cal.javaをcopyする。
2)Main.javaが格納されたフォルダで以下を実行する。
javac .\Main.java
java Main