#include <stdio.h>
int main(void)
{
int n, i, j, k;
int res = 0;
/*res를 바로 위에 줄에 같이 넣어버리지말고 0으로 초기화 해야 쓰레기값 안 생김.
nijk는 똑같이 쓰레기 값이 들어있더라도 코드 내려가면서 다 값이 재설정
되지만 코드를 보면 res는 재설정이 아니라 원래 들어있던 값에 바로 +1하는 식
이므로 쓰레기 값에 1을 더하게 되니까 재설정 따로 해줘야 함!*/
scanf("%d",&n);
for (i = 2; i <= n; i++) // i = 1에서 2로 변경! 2부터 출력해야하니..
{
int isprime = 1;
for (j = 2; j <= i - 1; j++)
{
if(i % j ==0)
isprime = 0;
}
if(isprime == 1)
{
res += 1;
printf("%d", i);
for (k = 0; k < 5; k++)
{
printf(" ");
}
}
if (isprime == 1 && res % 5 == 0)
printf("\n"); /* 원래 내가 i문 안, if isprime문 밖에 줄바꿈 코드 배치 함.
근데 이렇게 하면 i가 소수가 아닐 때도 if문 조건만 만족하면 줄바꿈 해버림. 소수일 때만
하도록 조건 추가해주자.근데 그냥 && 이거 지우고 if isprime문 안에
마지막 줄에 줄바꿈 코드 넣어주는 게 더 효율적.*/
}
return 0;
}
To embed this project on your website, copy the following code and paste it into your website's HTML: