728x90
반응형
문제 : http://www.jungol.co.kr/bbs/board.php?bo_table=pbank&wr_id=452&sca=2040
문제
소수(prime number)란 1보다 큰 자연수 중 1과 자기 자신 두 개만을 약수로 갖는 수를 말한다.
합성수(composite number)란 1보다 큰 자연수 중 소수가 아닌 수를 말하며 3개 이상의 약수를 갖는다.
1은 소수도 합성수도 아니다.
5개의 자연수를 입력받아 소수인지 합성수인지를 판단하는 프로그램을 작성하시오.
# include <stdio.h>
# include <stdbool.h>
bool prime(int num)
{
int i;
for(i = 2; i<=num/i; i++)
{
if(num%i == 0)
return 0;
}
return 1;
}
int main()
{
int n=5,i,j,cnt=0;
int arr[5];
for(i = 0; i<n; i++)
{
scanf("%d",&arr[i]);
if(arr[i] == 1)
{
printf("number one\n");
continue;
}
if(prime(arr[i]))
{
printf("prime number\n");
}
else
{
printf("composite number\n");
}
}
return 0;
}
728x90
반응형
최근댓글