1から1000までの完全数(因数の和=数)を全て列挙するプログラムを作成しなければなりません。
- これはJavaクラス用で、「for」ループのみを使用する必要があります
コードを 100 回チェックしましたが、出力が得られません。どこかに論理エラーがありません。誰か助けてもらえますか?
public static void main(String[] args)
{
// variables
int total = 0;
final int LIMIT = 1000;
// for loop to test all numbers 1-1000
for(int i = 1; i <= LIMIT; i++)
{
// if statement
if((i != 1) && (total == i - 1))
{
// prints perfect number
System.out.println((i - 1) + " is a perfect number");
// resets total value
total = 0;
}
// gets and add factors as total
for(int divider = 1; divider < i; divider++)
{
if((i % divider) == 0)
{
total += divider;
}
}
}
}