看,我有一个 boolean 方法,它通过用一个除数来修改数字来获取除数,该除数由 for 循环检查并确定为真(不是第一个,它只是循环程序以获得确定的输入量。 我不确定是否有某种方法可以获取循环的多个结果并将它们加在一起,但这就是我需要做的。现在我正在显示循环的结果,但那是为了调试,最终输出将是丰富(添加的除数超过数字)、完美(添加的除数等于数字)还是不足(添加的除数小于数字) 这是eclipse中的代码:
import java.util.*;
public class PerfectNumber {
/**
* @param args
*/
public static void main(String[] args) {
for(int i = 0; i < 15; i++)
{
Scanner reader = new Scanner(System.in);
int number = 0;
int divisor = 1;
int addnum = 0;
System.out.println("Please input a number to check if it is perfect, abundant, or deficient");
number = reader.nextInt();
for(divisor = 1; divisor < number; divisor++)
{
isDivisor(number, divisor);
if(isDivisor(number, divisor) == true)
{
System.out.println(divisor);
}
}
}
}
static boolean isDivisor(int number, int divisor)
{
if (number % divisor == 0)
return true;
else
return false;
}
}
最佳答案
回答你似乎迫在眉睫的问题,听起来像是家庭作业问题;)
I'm not sure if there's some way to take the multiple results of the loop and add them together
您可以检查函数的返回结果就像您已经在做的那样并增加计数器
public boolean isSeven(int x){
return x == 7;
}
public static void main(String[] args){
int sumOfSevens= 0;
int i = 0;
while(i < 10){
if(isSeven(7)){
sumOfSevens = sumOfSevens + 7; // or +=
++i;
}
}
// At this point sumOfSevens = 70;
}
关于java - 计算完美数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20389187/