の合計を見つける方法を私はCコースに約4週間だ、と希望基本的に出力以下のそのプログラムに取り組んで -基本ループ - 要因
./perfect
Enter number: 6
The factors of 6 are:
1
2
3
6
Sum of factors = 12
6 is a perfect number
./perfect
Enter number: 1001
The factors of 1001 are:
1
7
11
13
77
91
143
1001
Sum of factors = 1344
1001 is not a perfect number
私の仕事、これまで -
// Testing if a number is perfect
#include <stdio.h>
int main (void) {
//Define Variables
int input, sum;
int n;
//Obtain input
printf("Enter number: ");
scanf("%d", &input);
//Print factors
printf("The factors of %d are:\n", input);
n = 1;
while (n <= input) {
if (input % n == 0) {
printf("%d\n", n);
}
n = n + 1;
}
//Sum of factors
//printf("Sum of factors = %d", sum);
//Is it a perfect number?
if (sum - input == input) {
printf("%d is a perfect number", input);
} else if (sum - input == !input) {
printf("%d is not a perfect number", input);
}
return 0;
}
私は最初と最後の部分が完了しました(私は思う)。それは、私が苦労している要素をまとめているだけです。
どのようにすべての要因を一緒に追加しますか?それが最初のwhileループの一部であるか、別々に置かれるべきか?
ご協力いただければ幸いです!
ありがとうございました!
if(sum-input == input){'if((sum-input)== input){'? – ryyker
'if(sum-input == input){'は '(sum == input){'でなければならず、 'else'節は' if'を必要としません。 –