다음과 같이 코드 코드를 복사합니다.
패키지 테스트;
/**
* 당신은 체육 교사입니다. 수업이 끝나기 5분 남았을 때 게임을 하기로 결정했습니다. 현재 수업을 듣는 학생은 100명입니다. 게임의 규칙은 다음과 같습니다.
*
* 1. 먼저 3, 5, 7과 같이 한 자리 숫자여야 하는 세 가지 다른 특수 번호의 이름을 지정합니다.
* 2. 모든 학생들이 팀을 구성한 후 순서대로 센다.
* 3. 학생들이 숫자를 신고할 때, 신고된 숫자가 첫 번째 특수번호(3)의 배수이면 그 숫자를 말할 수 없으나, Fizz는 신고된 숫자가 두 번째 특수번호(5)의 배수이면, 그런 다음 Buzz라고 말하고, 보고된 숫자가 세 번째 특수 번호(7)의 배수이면 Whizz라고 말합니다.
* 4. 학생들이 숫자를 신고할 때 신고된 숫자가 동시에 두 개의 특수번호의 배수인 경우에도 특별 대우가 필요합니다. 예를 들어 첫 번째 특수번호와 두 번째 특수번호가 배수인 경우에는 해당 숫자를 사용할 수 없습니다. 라고 말할 수 있지만 FizzBuzz 등을 의미합니다. 동시에 세 개의 특수 숫자의 배수인 경우 FizzBuzzWhizz라고 말하세요.
* 5. 학생들이 숫자를 보고할 때 보고된 숫자에 첫 번째 특수 숫자가 포함되어 있으면 숫자를 말할 수 없고 해당 단어를 말해야 합니다. 예를 들어 이 예에서는 첫 번째 특수 숫자가 3이면 13을 보고합니다. - 1세 학생들은 Fizz라고 말해야 합니다. 숫자에 첫 번째 특수 번호가 포함되어 있으면 규칙 3과 4가 무시됩니다. 예를 들어 35를 신고하려는 학생은 BuzzWhizz가 아닌 Fizz만 신고합니다.
*
* 이제 이 게임을 시뮬레이션하기 위한 프로그램을 완성해야 합니다. 이 프로그램은 먼저 3개의 특수 숫자를 받은 다음 100명의 학생이 보고해야 하는 숫자 또는 단어를 출력합니다.
*
* @author liuxuewen
*
*/
공개 클래스 FizzBuzzWhizz {
공개 정적 무효 메인(String[] args) {
int a = 3;/*첫 번째 특수 단어*/
int b = 5;/*두 번째 특수 단어*/
int c = 7;/*세 번째 특수 단어*/
int start = 1;/*계산을 시작할 숫자*/
int end = 100;/*보고를 종료할 숫자*/
String[] 출력 = { "Fizz", "Fizz", "Buzz", "Whizz", "FizzBuzz", "FizzWhizz", "BuzzWhizz", "FizzBuzzWhizz" };/*스토리지 플래그 문자열 배열*/
int index = -1;/*기본 문자열 인덱스는 -1입니다*/
/*계산을 위한 루프*/
for (int i = 시작; i <= 끝; i++) {
/*5번째 조건을 먼저 판단하고, 그 다음 3번째 조건, 마지막으로 4번째 조건을 판단합니다*/
인덱스 = (i % 10 == a || i / 10 == a) 0 : -1;
인덱스 = (-1 == 인덱스) ? ((i % a == 0 && i % b == 0) ? 4 : (i % a == 0 && i % c == 0) ? 5 : (i % b == 0 && i % c == 0) ? 6 : -1) : 인덱스;
인덱스 = (-1 == 인덱스) ? ((i % a == 0) ? 1 : (i % b == 0) ? 2 : (i % c == 0) ? 3 : -1) : 인덱스;
/*출력 결과*/
System.out.println((-1 == 인덱스 ? i : 출력[인덱스]));
}
}
}