프로그래밍 공부/Jumping into C++
[C++]1에서 1000까지의 수 중에서 소인수들의 합이 소수인 수를 찾아내는 프로그램
Rocketbabydolls
2020. 4. 25. 15:41
//1에서 1000까지의 수 중에서 소인수들의 합이 소수인 수를 찾아내는 프로그램
#include
using namespace std;
bool Is_prime(int num);
int main() {
for(int num = 2; num < 1001; num++)
{
int i=2;
int tmp=num;
int prime_sum=0;
while(tmp!=1)
{
if(tmp%i == 0)
{
prime_sum += i;
tmp = tmp/i;
}
else i++;
}
if (Is_prime(prime_sum) == true)
{
cout << num << " ";
}
}
return 0;
}
bool Is_prime(int num)
{
if (num == 1 ) return false;
int i=2;
while(1){
if (num>i)
{
if (num%i==0) return false;
else i++;
}
else return true;
}
}