FizBuzz 程序:如何使输出正确?

ben*_*ham 1 java fizzbuzz

我有一个关于这个程序的问题,它说:FizzBu​​zz 挑战:显示从 1 到 x 的数字,将 3 的倍数替换为“fizz”,5 的倍数替换为“buzz”,3 和 3 的倍数替换为“fizzbuzz” 5. 结果必须是:1 2 fizz 4 buzz fizz 7 8 fizz buzz 11 fizz 13 14 fizzbuzz 16 ...

所以我的问题是在打印输出的时候,我不知道该怎么办。

public class Multiplos {

    public static void main(String args[]) {

        for (int i = 1; i <= 100; i++) {

            if (i % 3 == 0) {
                System.out.print(i + " ");
                System.out.print(" fizz ");
            }

            if (i % 5 == 0) {
                System.out.print(" " + i);
                System.out.print(" " + "buzz ");
            }

            if((i % 3 == 0)&&(i % 5 == 0)){
                System.out.print(i + " ");
                System.out.print(" fizzbuzz ");
            }

        }

    }
}
Run Code Online (Sandbox Code Playgroud)

Noe*_*l M 5

这是伪代码:

for i in 1 to 100
   if(i % 5 == 0) AND (i % 3 == 0) print 'fizzbuzz'
   else if(i % 3 == 0) print 'fizz'
   else if(i % 5 == 0) print 'buzz'
   else print i
Run Code Online (Sandbox Code Playgroud)

我将把它作为一个练习,让你把它转换成 Java,因为这可能有助于理解它是如何工作的。