728x90
[목적]
자연수 N을 입력받으면 N의 진약수의 합을 수식과 함께 출력한다.
[입력 예제]
20
[출력 예제]
1 + 2 + 4 + 5+ 10 = 22
20을 입력받게 되면 20의 약수인 [1, 2, 4, 5, 10, 20]에서 자기 자신을 뺀 진약수인 [1, 2, 4, 5, 10]을 더하는 수식과 합을 출력되면 된다.
[코드]
#include <iostream>
using namespace std;
int main(void) {
int n, sum=0;
cin >> n;
for(int i=1; i<n; i++){
if(n%i==0){
sum += i;
if(i!=1) //처음이 아닐 경우에만 "+" 출력
cout << " + ";
cout << i;
}
}
cout << " = " << sum;
return 0;
}
[실행 결과]
728x90
반응형
'문제풀이 > C++' 카테고리의 다른 글
[C++] 숫자만 추출 (0) | 2020.12.27 |
---|---|
[C++] 나이 계산 (0) | 2020.12.27 |
[C++] 나이 차이 (0) | 2020.12.27 |
[C++] 자연수의 합 (0) | 2020.12.26 |
[C++] 1부터 N까지의 M의 배수 합 (0) | 2020.12.26 |