2014-09-23 462 views
-2

我有这个程序,我必须写的问题。 (首先,英文的心不是我的第一语言,所以我也很难理解我对这个程序做什么。)使用while循环来计算奇数1-25和偶数的总和1-50


Create an application Loops.java. The program must do the following: 

Use a while loop to calculate the sum of the odd numbers 1-25. 

Use a while loop to calculate the sum of the even numbers 1-50. 

我们不加奇数像1+3+5+7+....+25, 我们也不会添加奇数,直到总值为25

总值将是奇数范围从1 to 25,总和为偶数将从1-50


作为要求,将有许多可能性, 如(1 + 3 = 5), (1 + 5 = 7), (1 +7 = 9)等在

我不知道,因为从1 to 25奇数已累计13奇数,甚至从1-50数量已经25偶数,什么是同时的极限环没有限制总奇数。

任何人都可以拿出这个例子吗?

这是我写的第一本,但是在我的教授解释限制和我不应该做的之后,我完全迷失了。

public class Loops 
{ 
    public static void main (String[] args) 
    { 
     int oddNumber = 1; 
     int evenNumber = 2; 

     while (oddNumber < 25) 
     { 
      oddNumber = oddNumber + 2;  
     }  
     System.out.printf ("Total sum of the odd number is %d\n", oddNumber); 

     while (evenNumber < 50) 
     { 
      evenNumber = evenNumber + 2; 
     } 
     System.out.printf ("Total sum of the even number is %d\n", evenNumber); 
    } 
} 
+0

为了防止混淆。您不计算总和,您正在搜索一组数字(赔率和均值)的所有可能组合以形成给定(最大?)总和。 (有没有一个数学术语?) – Felk 2014-09-23 04:57:32

+0

我想你想找到奇数的所有组合,这样它们的总和就在1-25之间,而偶数就是类似的情况。那么可能的组合大小是否仅限于如你所说的(1,3),或者它可以增长超过? – Himanshu 2014-09-23 05:00:31

+0

这是我不明白的东西,我的教授说我们需要计算从1到25的奇数和从1到50的偶数的和。他给我们的偶数和奇数的范围,以便我们知道何时停止。问题是,从1到50,有25个偶数,包括50个。如果总数不超过50,那么我可以看到循环的结束,这非常接近。但总价值不是50,所以我可以添加任何偶数,我想从1-50不等。所以我可以加2 + 4 + 6 + 8 + 10 + 12 ... + 50或者4 + 8 + 12 + 16 + ... + 50等等。我希望你明白我在这里想说的话。 – 2014-09-23 05:39:04

回答

0
public class Loops 
{ 
    public static void main (String[] args) 
    { 
     int oddNumber = 1; 
     int totalOdd = 0; 
     int evenNumber = 2; 
     int totalEven = 0; 

     while (oddNumber <= 25) 
     { 
      totalOdd = totalOdd + oddNumber; 
      oddNumber = oddNumber + 2;  
     }  
     System.out.printf ("Total sum of the odd number is %d\n", totalOdd); 

     while (evenNumber <= 50) 
     { 
      totalEven = totalEven + evenNumber; 
      evenNumber = evenNumber + 2; 
     } 
     System.out.printf ("Total sum of the even number is %d\n", totalEven); 
    } 
} 

快速的问题,它说1-25和1-50,它包括25和50,或排除25和50???

如果不包括,代码仍然正常,否则,将<更改为< = 2个while循环。你的问题很难理解,所以让我知道这是你想要的!我添加了2个新变量totalOdd和totalEven来捕捉赔率和平均值的总和。之前,你只是返回了顶部的单数和双数的值,即25和50.而你到那里的方式也没有任何意义,你只是在奇数和偶数线上加2,直到你达到了可以停止while循环的期望数量。你甚至没有跟踪迭代次数。所以我改变了代码,把1到25中的每个数字加起来就是奇数,每个数字1-50都是偶数,并显示结果。如果没有任何意义,只要问。

---编辑---

你说25和50都包括在内,在这种情况下,我现在已经更新了while循环,包括年底的数字。

+0

25和50包含在内......所以你也认为这个问题很难理解。谢谢你,我以为是唯一不懂英语的人。当我不停地问问题如何解决问题时,我觉得自己像个白痴,但我不明白如何去做,因为我只是没有看到这个问题的解决方案。 – 2014-09-23 05:46:46

+0

不是问题,现在我已经更新了代码以反映这一点,请检查并确定它是否应该如此。 – DreadHeadedDeveloper 2014-09-23 05:51:35

+0

谢谢,我会试试看看这是否是我的教授想要的格式。我认为必须等到明天才能知道。他可能已经睡着了 – 2014-09-23 06:00:23

2

这样来做:

public class Loops 
{ 
    public static void main (String[] args) 
    { 
     int oddNumber = 0; 
     int evenNumber = 0; 
     int number=1; 
     while (number < 50) 
     { 
      if(number <= 25 && number%2!=0){ 
       oddNumber=oddNumber+number; 
      }else if(number%2==0){ 
       evenNumber=evenNumber+number; 
      } 
      number++; 
     }  

     System.out.printf ("Total sum of the odd number is %d\n", oddNumber); 


     System.out.printf ("Total sum of the even number is %d\n", evenNumber); 
    } 
} 

你只需要单回路和逻辑管理的oddeven数总和。

+0

确实你应该+1,因为没有任何评论或解释:) – 2014-09-23 05:02:44