javaを使って、以下のようなプログラムを作成しました。
public class Sample {
public static void main(String[] args) {
int i = 1; for(; i <= 10000; i++ ){ int t = 0; for(int j= 1; j < i; j++ ) { if( i % j == 0 ){ t += j; } } if( i == t) { System.out.println(i); } } }
}
書き換え
public class Sample {
public static void main(String[] args) {
int x = 1;
int s = sample(x);
System.out.println(s); } static int sample(int x) { int t = 0; for(int i = 1; i <= 10000; i++ ){ for(int j= 1; j < i; j++ ) { if( i % j == 0 ){ t += j; } } } return t; }
}
その数自身を除く約数の和が、その数自身と等しい10000までの自然数を検出するプログラムを作成しました。
一番目のプログラムは正常に作動しました。
しかし、メソッドを増やしたプログラムに書き換えたところ、正常に作動しなくなってしまいました。引数が完全数かどうかを確認するメソッドを作成したつもりです。
このプログラムを正常に作動させるためには、どこをどのように修正すれば良いでしょうか。
よろしくお願いします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。