Computer >> 컴퓨터 >  >> 프로그램 작성 >> C++

함수를 생성하여 소수를 확인하는 C++ 프로그램

<시간/>

소수는 1보다 큰 정수이며 소수의 유일한 인수는 1과 자기 자신이어야 합니다.

첫 번째 소수 중 일부는 -

2, 3, 5, 7, 11, 13 ,17

함수를 이용하여 소수인지 아닌지 확인하는 프로그램은 다음과 같다.

예시

#include <iostream>
using namespace std;
void isPrime(int n) {
   int i, flag = 0;
   for(i=2; i<=n/2; ++i) {
      if(n%i==0) {
         flag=1;
         break;
      }
   }
   if (flag==0)
   cout<<n<<" is a prime number"<<endl;
   else
   cout<<n<<" is not a prime number"<<endl;
}
int main() {
   isPrime(17);
   isPrime(20);
   return 0;
}

출력

17 is a prime number
20 is not a prime number

isPrime() 함수는 숫자가 소수인지 여부를 확인하는 데 사용됩니다. 2에서 n의 절반까지 실행되는 루프가 있습니다. 여기서 n은 결정할 수입니다. 루프의 각 값은 n을 나눕니다. 이 나눗셈의 나머지가 0이면 n은 1이나 자기 자신이 아닌 숫자로 나눌 수 있음을 의미합니다. 따라서 소수가 아니며 플래그가 1로 설정됩니다. 그런 다음 break 문을 사용하여 아래와 같이 루프를 종료합니다. -

for(i=2; i<=n/2; ++i) {
   if(n%i==0) {
      flag=1;
      break;
   }
}

플래그 값이 0으로 남아 있으면 숫자는 소수이고 표시됩니다. flag의 값이 1로 변경된 경우 해당 숫자는 소수가 아니며 표시됩니다.

if (flag==0)
cout<<n<<" is a prime number";
else
cout<<n<<" is not a prime number";

isPrime() 함수는 값 17과 20에 대해 main() 함수에서 호출됩니다. 이는 다음과 같이 표시됩니다.

isPrime(17);
isPrime(20);