Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/380.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java从If语句中获取求和_Java - Fatal编程技术网

Java从If语句中获取求和

Java从If语句中获取求和,java,Java,我的任务是: 编写一个Java程序,查找1-50中所有可被7整除的奇数,但只求可被9整除的偶数之和。 打印总和。 打印可被7整除的奇数计数。 打印该范围内可被9整除的偶数计数 这是我的代码: int sNumber = 0; for(int aNumber= 1; aNumber <= 50; aNumber++) { if (aNumber % 7 == 0) if(aNumber % 2 == 1)

我的任务是:

编写一个Java程序,查找1-50中所有可被7整除的奇数,但只求可被9整除的偶数之和。
打印总和。
打印可被7整除的奇数计数。
打印该范围内可被9整除的偶数计数

这是我的代码:

    int sNumber = 0;
    for(int aNumber= 1; aNumber <= 50; aNumber++)
    {
     if (aNumber % 7 == 0)
      if(aNumber % 2 == 1)                 
       System.out.println("These are odd"+" "+ aNumber);                                
    }            
    for(int bNumber=1 ; bNumber < 50; bNumber++)
    {
     if (bNumber % 9 == 0)
      if(bNumber%2 == 0)                                
       System.out.println("These are even"+" "+bNumber);
    }
int sNumber=0;

对于(int aNumber=1;aNumber这个想法是从创建一个变量来存储
sum
开始。它必须从0开始。每当你找到一个可被9整除的偶数,你就把它添加到
sum
。在
for
循环结束时,当你遍历所有的数字时,你就会得到所有的总数在变量
sum
中可被9整除的偶数

在下面的代码中,我还使用了两个整数
count偶
count奇数
来跟踪找到的相关数字的数量。
count偶
在找到可被9整除的偶数时递增1,在找到可被7整除的奇数时递增1d

注意:对于所有
for
if
while
和其他类似语句/循环,最好使用大括号,即使块只包含一行要执行的代码

int countEven = 0, countOdd = 0, sum = 0;

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

    if ((i % 7 == 0) && (i % 2 == 1)) {
        System.out.println("This is an odd number that is divisible by 7: " + i);
        countOdd++;
    }

    if ((i % 9 == 0) && (i % 2 == 0)) {
        System.out.println("This is an even number that is divisible by 9: " + i);
        countEven++;
        sum += i;
    }
}

System.out.println("These are " + countOdd " odd numbers thare are divisible by 7 and " + countEven + " even numbers that are divisible by 9.");
System.out.println("Sum of even numbers that are divisible by 9: " + sum);
int count偶数=0,count奇数=0,和=0;

对于(inti=1;i您只需将其添加到第二个循环
sNumber+=bNumber;

还考虑使用和运算符代替嵌套if语句。

int sNumber = 0;
        for (int aNumber = 1; aNumber <= 50; aNumber++) {
            if (aNumber % 7 == 0 && aNumber % 2 == 1) {
                System.out.println("These are odd" + " " + aNumber);
            }
        }
        for (int bNumber = 1; bNumber <= 50; bNumber++) {
            if (bNumber % 7 == 0 && bNumber % 2 == 1) {
                System.out.println("These are even" + " " + bNumber);
                sNumber += bNumber;
            }
        }
        System.out.println("Sum of even numbers" + " " + sNumber);
int sNumber=0;

对于(int-aNumber=1;aNumber您不需要两个循环来完成此操作,它可以在一个循环中完成

检查当前数字与您的两个条件:

if(i % 2 == 0 && i % 7 == 0)
    sumOfEven += i;
if(i % 2 != 0 && i % 9 == 0)
    countOdd++;

<代码> s>(代码)>代码> int和= 0; <代码>和+b=;b/代码>请考虑我在答案中所写的内容,并试图理解它是如何获得的。如果我能问一个问题,为什么在0开始时设置int、to todod,然后用for循环,只需要做一次?你如何关闭它?继续往下看?;我在尝试关闭和system.out.print时遇到问题,输入单词和变量会告诉我不存在变量。对不起,我不太理解你的问题。我用
count偶数
来计算偶数,用
countOdd
来计算奇数h、 这两个变量有两个不同的用途。当我找到一个奇数时,我递增
countOdd
,而我不递增
count偶
。这回答了你的问题吗?你关闭它是什么意思?注意:我在
for
循环的外部声明了
countOdd
sum
。你可以ot在
for
循环中声明它们。在
for
循环中声明的变量超出范围,并在每次循环迭代结束时停止存在!可能这就是您得到的错误:“不存在变量”。