Java从If语句中获取求和
我的任务是: 编写一个Java程序,查找1-50中所有可被7整除的奇数,但只求可被9整除的偶数之和。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)
打印总和。
打印可被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
循环中声明的变量超出范围,并在每次循环迭代结束时停止存在!可能这就是您得到的错误:“不存在变量”。