728x90
반응형

문제 : http://www.jungol.co.kr/bbs/board.php?bo_table=pbank&wr_id=2079&sca=2040

 

JUNGOL

 

www.jungol.co.kr

문제

소수(prime number)란 1보다 큰 자연수 중 1과 자기 자신 두 개만을 약수로 갖는 수를 말한다.
자연수 M과 N을 입력받아 M부터 N까지 소수의 개수를 구하여 출력하는 프로그램을 작성하시오.

 

[그림1] 입 출력 형식

 

[그림2] 입 출력 예제

# include <stdio.h>

int p[2000005];

void prime(int num)
{
	int i,j;
	
	p[0]=p[1]=1;
	
	for(i = 2; i<=num/i; i++)
	{
		if(p[i] == 0)
		{
			for(j = i*i; j<=num; j+=i)
			{
				p[j] = 1;
			}
		}
	}
}


int main()
{
	int i,cnt=0,m,n;
	
	scanf("%d %d",&m,&n);
	
	prime(n);
	
	for(i = m; i<=n; i++)
	{
		if(p[i] == 0)
			cnt++;
	}
	printf("%d",cnt);
	
	return 0;

	
	return 0;
}
728x90
반응형
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기