자연수 N이 주어지면 자연수 N의 진약수의 합을 수식과 함께 출력하는 프로그램을 작성하세요.
첫 줄에 자연수 N이 주어집니다. (3<N<=100)
20
첫 줄에 더하는 수식과 함께 합을 출력합니다.
1+2+4+5+10=22
#include <iostream>
using namespace std;
int main()
{
int n;
cin >> n;
int sum = 0;
for (int i = 1; i <= n; i++)
{
if ((n % i == 0) && (n != i))
{
sum += i;
cout << i << "+";
}
}
cout << "=" << sum;
}
#include <iostream>
using namespace std;
int main()
{
int n;
cin >> n;
int sum = 0;
cout << 1;
for (int i = 2; i <= n; i++)
{
if ((n % i == 0) && (n != i))
{
sum += i;
cout << "+" << i;
}
}
cout << "=" << sum+1;
}
1은 무조건 약수이므로 1을 빼놓고
"+"i 식으로 출력함.
#include <iostream>
using namespace std;
int main()
{
int n;
cin >> n;
int sum = 1;
cout << 1;
for (int i = 2; i < n; i++)
{
if (n % i == 0)
{
sum += i;
cout << "+" << i;
}
}
cout << "=" << sum;
}