【发布时间】:2016-01-15 11:44:19
【问题描述】:
我正在尝试为游戏“fizzbuzz”创建一段代码,如果 n|3 => n=Fizz,如果 n|5 => n= Buzz,如果 n|3 和 n|5 则 n=嘶嘶声。
由于某种原因,我的代码只显示了 46 行代码,有人可以帮帮我吗?谢谢。
这是我的代码:
import static java.lang.Math.*;
import java.io.*;
public class P2InventedExercise
{
static void FizzBuzz(int n)
{
/** Welcome Message **/
System.out.println("+----------------------------+");
System.out.println("| WELCOME TO FIZZ BUZZ |");
System.out.println("+----------------------------+");
/** Creating Strings to Print & Defines integer 'k'. **/
String Fizz = "Fizz";
String Buzz = "Buzz";
String FizzBuzz = "FizzBuzz";
int k = 0;
/** Printing Strings **/
while (k <= n)
{
/** Boolean Tests **/
boolean FizzTest = (k%3 == 0);
boolean BuzzTest = (k%5 == 0);
boolean FizzBuzzTest = (k%3 == 0 && k%5 == 0);
/** If Tests **/
if (FizzBuzzTest)
{
System.out.println(k+"= " + FizzBuzz);
k=k+1;
continue;
}
if (FizzTest)
{
System.out.println(k + "= " + Fizz);
k=k+1;
continue;
}
else if (BuzzTest)
{
System.out.println(k + "= " + Buzz);
k=k+1;
continue;
}
else
{
System.out.println(k + "= " + k);
k=k+1;
continue;
}
}
}
}
【问题讨论】:
-
请描述预期的行为。
-
n的值是多少? -
FizzBuzz 是一个游戏,如果 n|3,n 被分配单词 Fizz,如果 n|5,n 被分配单词 Buzz,如果 n 除 3 和 5,那么 n 被分配 FizzBuzz。程序对 0 到 n 执行此操作,其中 n 由用户选择。问题是当我选择 n=100 时,程序只显示 46 行文本,所以它从 n=54 开始显示,但它意味着从 n=0 开始。
-
n|3表示 n 除以 3。您的意思是3|n代替吗? -
您可以安全地删除 所有 这些导入 --- 您没有使用它们。
标签: java loops conditional fizzbuzz