C++: Viết chương trình nhập số nguyên dương n. Xuất in ra màn hình số nguyên tố Liệt kê n số nguyên tố đầu tiên

Số nguyên tố là số chỉ chia hết cho 1 và chính nó. Số nguyên tố chúng ta thường đã quá quen thuộc trong các chương trình toán học phổ thông. Khi xây dựng thuật toán kiểm tra số nguyên tố chúng ta cũng cần phải có chút kinh nghiệm là chỉ kiểm tra ước của số nguyên tố tới căn của số đó là đủ chứ không cần phải kiểm tra tới < n. Dưới đây là vài cách hướng dẫn bài toán in ra n số nguyên tố đầu tiên các bạn có thể tham khảo

Mã:

#include<stdio.h>

#include<conio.h>

#include<math.h>

long ktSoNguyenTo(int n)

{

if(n==0||n==1) return 0;

long i;

for(i=2;i<=sqrt(n);i++)

if(n%i==0) return 0;

return 1;

}

void inSoNguyenTo()

{ int i=2;

int n,count=0;

printf("\n Nhap n=");

scanf("%d",&n);

while(count<n)

{

if(ktSoNguyenTo(i)==1){

printf("%5d",i);count++;}

i++;

}

}

int main()

{

inSoNguyenTo();

}

Bài tập kiểm tra số nguyên tố với ngôn ngữ C bạn có thể tham khảo thêm

Mã:

#include<stdio.h>

#include<stdlib.h>

#include<conio.h>

#include<math.h>

int kiemTraSoNguyenTo(const int a)

{

int i = 0;

for(i = 2; i <= (int)sqrt(a); i++)

{

if( a % i == 0 || a < 2 && a != 2)

{

return 0;

}

}

return 1;

}

int main ()

{

int N,i, k = 0;

int* snt = 0;

printf("\n Nhap vao N:");

scanf("%d", &N);

snt = (int*)malloc(N*sizeof(int));

k = 0;

i = 2;

while(k < N)

{

i++;

if(kiemTraSoNguyenTo(i) == 1)

{

snt[k] = i;

k++;

}

}

printf("\n Bang cac so nguyen to\n");

for (i = 0; i < k; i++)

{

printf("%5d", snt[i]);

}

free(snt);

getch();

return 0;

}