for循环产生一系列不同的数字

时间:2016-09-27 19:41:25

标签: java for-loop

我已经在我的问题上找到了一些相似的主题,但仍然无法弄清楚任务,所以我认为最好创建自己的主题。

我需要编写一个产生以下输出的for循环:

289 256 225 196 169 144 121 100 81

对于增加的挑战,请尝试修改代码,使其不需要使用*乘法运算符。

这是我的代码,我被困在这里,所以请帮忙。

public class Exercises2{
   public static void main(String[] args){
      int start = 19;
      int increment = 2;
      for(int count = 81; count <= 289; count++){


         System.out.println(count + start);
         start = increment + start;         

      }
   }
}

5 个答案:

答案 0 :(得分:0)

你有没有想出在系列中产生数字的模式?如果没有,乘法&#34;挑战&#34;实际上是对它如何产生的一个很大的暗示。

之后尝试弄清楚如何编写一个手动执行乘法的循环,并且应该为您提供您正在寻找的答案。

答案 1 :(得分:0)

你的主要问题是你没有足够的增加数量。如果你要计数从81到289,那么你需要做更多的事情而不仅仅是++;只需进行一些更改即可修复您自己的代码。将起始值更改为17并更改计数递增计数+ =开始。

(STREET)|(AVENUE)|(BOULEVARD)

答案 2 :(得分:0)

我认为自己做作业是有价值的,并且弄清楚作为程序员可以带来很多好处和收获。但是这里是你没有乘法的答案:

 int start = 2;

int increment = 19;

int value = 81;

int _max = 289;

while(value <= _max)
{
    System.out.println(value);
    value += increment;
    increment += start;
}

答案 3 :(得分:0)

以下是您的需求。注意for循环中的count + =开始增量,并且从17的基数开始添加start + = increment,所以你第一次增加19,第二次增加21,等等。

记住for循环不需要计数++它可以是最后一部分中的任何有效命令,也可以完全省略

int start = 17;
int increment = 2;
for(int count = 81; count <= 289; count+=start){
    System.out.println(count);
    start+=increment;
}

答案 4 :(得分:0)

试试这个。

    int start=17;  
    int end=9;     
    for(int i=17;i>=9;i--)
    {
        System.out.println (i*i);

    }