for循环计数java的术语数

时间:2013-10-16 02:44:06

标签: java for-loop

嘿伙计们我坚持计算for循环...它应该很容易,但出于某种原因我不得不考虑它或什么! 任何帮助都会很棒!

我正在尝试获取通过%2的条款总数并将其打印出来,但是当我按照我的方式尝试它时,它确实是11223344556677889910,我认为这很奇怪!我想做的就是说(10)。

int counter = 0 

for (int i = 1; i < 20; i++) {
    if (i % 2 == 1) {
        counter += 1;
    }
    System.out.print(counter);
}

输出是112233445566778899

无法使用数组或列表:\

7 个答案:

答案 0 :(得分:1)

if条件似乎不正确,请尝试:(编辑:以1开始counter并将SOP移出for循环)

int counter = 1 

for(int i=1;i<20;i++) {
if (i%2==0) //Match for 2
{ 
  counter+=1;
}
}
System.out.print(counter);

答案 1 :(得分:0)

您需要在for循环System.out.print(counter);之外打印计数器,看起来i%2 == 1不正确。您需要更改为i%2 == 0

int counter = 0 

for(int i=1;i<20;i++) {
     if (i%2==0)
     {
         counter+=1;
     }
}
System.out.print(counter);

答案 2 :(得分:0)

System.out.print在你的for循环中,它打印每次迭代。

如果您想要10,请将调用移至for循环外的.print(),然后将计数器设置为1而不是0。

答案 3 :(得分:0)

在这种情况下输出是正确的。每次执行循环时,您将打印counter的总量。因此,对于i = 0,其将是counter = 1,对于i = 1,仍然是counter = 1,对于i = 2,计数器增加到2,对于i = 3,计数器保持2,其被打印等。

代码工作正常但是有错误。将System.out.print(counter);移到for循环之外,它应该可以正常工作。另请记住将counter初始化为1。

答案 4 :(得分:0)

print中取出for loop行,否则每次迭代(显然)都会打印计数,这是19次。

int counter = 0;

for(int i = 1; i < 20; i++) 
{
    if (i % 2 == 1) counter++;
}
System.out.print(counter);

答案 5 :(得分:0)

您已将System.out.print(counter);放入for循环中。这就是原因。这将有效:

int counter = 0; 
for(int i=1;i<20;i++) {
    if (i%2==1)
    { 
        counter+=1;
    }       
}
System.out.print(counter);

答案 6 :(得分:0)

System.out.print(counter);

您应该将此行代码放在for循环之外,以避免打印出counter的每个值。