数字模式中断

时间:2014-09-11 05:26:33

标签: java numbers

我试图找出为什么这些代码在8之后不会显示任何内容。

        public class numGame  
   {
        public static void main(String[] args)

        {
            int number1 = 3;
            int number2 = 8;
            int total = 0;

            System.out.print(number1 + " ");
            System.out.print(number2 + " ");


            while (total <450)
{
                total = number1 + number2;



            System.out.print(total + " ");



            number1 = number2;
            number2 = total;



          }

        }
    }

这个想法是让3和8加起来11然后19然后30然后49等等,直到它达到大于或等于450的数字并结束。

3,8,11,19,30,49 ......

结构化或其他方式有问题吗?

[更新]

根据Luiggi的反馈,代码运行期待一个问题。

此输出为:3,8,11,19,30,49,79,128,207,335,542

程序应该在335处切断,因为542超过450.

if语句是解决它的一种方法吗?

2 个答案:

答案 0 :(得分:0)

这甚至不会编译

a)总和未定义

b)你打印出总数,但这只是设置为0

c)num1或num2都没有递增,因此sum总是相同的值(循环时无限)

d)未定义num1或num2

e)为什么在最后更改number1和number2的值?

while (total < 450) {
    total = number1 + number2;
    number1 = number2;
    number2 = total;
}

答案 1 :(得分:0)

你不是在任何地方计算总数。

Sum和Total令人困惑。

num1和number1也令人困惑。

while循环应该有大括号。