Computer >> 컴퓨터 >  >> 프로그래밍 >> C 프로그래밍

처음 N개의 소수의 합을 구하는 C 프로그램

개요

처음 N개의 소수의 합을 출력하는 프로그램은 먼저 n개의 소수를 차례대로 찾은 뒤, 이들을 모두 더해 합을 구하는 방식으로 동작합니다. 계산된 합은 정수형 변수에 저장되며, 마지막에 화면으로 출력됩니다.

코드는 숫자를 하나씩 가져와 소수인지 검사하고, 소수로 판별되면 합계(sum) 변수에 더합니다. 이 과정을 n번째 소수를 찾을 때까지 반복한 후, 최종 합계를 출력합니다.

동작 원리

1. 2부터 시작하여 숫자를 하나씩 증가시키며 소수 여부를 검사합니다.
2. isprime() 함수는 입력받은 수가 소수이면 1을, 아니면 0을 반환합니다.
3. 소수로 판별되면 sum 변수에 값을 누적하고, 찾은 소수의 개수(i)를 1 증가시킵니다.
4. i가 n과 같아지면 반복문을 종료하고 합계를 출력합니다.

예제 코드

#include <stdio.h>
int isprime(int j) {
   int count=0;
   for(int i = 2 ; i <= j/2; i++) {
      if(j%i == 0) {
         count = 1;
      }
   }
   if(count == 0) {
      return 1;
   }
   else
      return 0;
}
int main(void) {
   int n = 5;
   int i=0, j= 1;
   int sum = 0;
   while(1) {
      j++;
      if(isprime(j)) {
         sum += j;
         i++;
      }
      if(i == n) {
         break;
      }
   }
   printf("The sum of first %d prime numbers is %d", n, sum);
   return 0;
}

실행 결과

The sum of the first 5 prime numbers is 28

결과 해설

위 예제에서 n의 값은 5로 설정되어 있습니다. 처음 5개의 소수는 2, 3, 5, 7, 11이며, 이들의 합은 다음과 같습니다.

2 + 3 + 5 + 7 + 11 = 28

따라서 프로그램은 "처음 5개의 소수의 합은 28입니다"라는 결과를 출력하게 됩니다. n의 값을 변경하면 원하는 개수만큼의 소수 합을 손쉽게 구할 수 있습니다.