1 から n までの完全数を出力するアルゴリズムを作成します。数が完全かどうかを判断するには、その数よりも小さい数のすべての要素を合計します。合計が数と等しい場合、それは完全です。
import java.util.Scanner;
public class Assign_6 {
public static void main(String[] args){
int num,number,sum=0,factor;
System.out.print("Enter Number");
Scanner keyboard = new Scanner (System.in);
number=keyboard.nextInt();
for (num=1;num<number;num++){
for(factor=1;factor<number;factor++){
if(num%factor==0){
sum= sum+factor;
}
if(sum==num){
System.out.println(sum);
}
sum=0;
}
}
}
}
出力: 24
何も出力されません。何が悪いのかわからない。どこが間違っていますか?while、for、else-if ステートメントしか使用できません。