VIẾT CHƯƠNG TRÌNH IN RA N SỐ NGUYÊN TỐ ĐẦU TIÊN

Giúp em làm bài này với, tưởng dễ nhưng đến lúc làm thì nó lu bu nhiều cái :shock::shock: .Thank !!PS: ý của em thế này : n = 3 => 2 3 5 n = 5 => 2 3 5 7 11 . Làm trên C nha ( em mới học xong cái hàm thui :cry

Bạn đang xem: Viết chương trình in ra n số nguyên tố đầu tiên

*

Cách 1: Em lập hàm bool isPrime(int x), nhận vào x, return true nếu x là ngtố, false nếu x ko là nguyên tốxong
Cách 2: Em lên mạng search wiki bài: sàng số nguyên tố, xong chuyển qua wiki tiếng anh, có tấm hình thuật toán mô phỏng (cách này code nhiều hơn 1 chút, nhưng chạy nhanh hơn). Đây là gợi ý thôi, anh không tìm giúp cho đâu.
*

Cách của anh:Dùng 1 mảng để chứa n số nguyên tố mà e nói:1 số là số nguyên tố sẽ không chia hết cho các số nguyên tố bé hơn hoặc = căn bậc hai của nó.Như vậy thì mảng đầu của ta là 2, số tiếp theo là 3 vì 3 ko chia hết cho 2, số tiếp là 5 vì không chia hết cho 2, số tiếp là 7 vì không chia hết cho 2, số tiếp là 11 vì không chia hết cho 2 và 3. Cứ z thôi
*
)
*

*

Giúp em làm bài này với, tưởng dễ nhưng đến lúc làm thì nó lu bu nhiều cái :shock::shock: .Thank !!PS: ý của em thế này : n = 3 => 2 3 5 n = 5 => 2 3 5 7 11 . Làm trên C nha ( em mới học xong cái hàm thui :cry
#include#includeintktSNT(intn){if(n2)return0;for(inti=2,temp=int(sqrt(double(n)));itemp;i++)if(n%i==0)return0;return1;}intmain(intN){printf("N=");scanf("%d",&N);for(inti=2,c=0;cN;i++){if(ktSNT(i)==1){printf("N<%d>=%d",c,i);c++;}}return0;}

Xem thêm: Có Đôi Lần Vài Ba Người Hỏi Có Cô Đơn Không, Quen Với Cô Đơn

*

Giúp em làm bài này với, tưởng dễ nhưng đến lúc làm thì nó lu bu nhiều cái :shock::shock: .Thank !!PS: ý của em thế này : n = 3 => 2 3 5 n = 5 => 2 3 5 7 11 . Làm trên C nha ( em mới học xong cái hàm thui :cry
Em có thể tham khảo bài này nhé. Trước tiên muốn in ra n số nguyên tố đầu tiên thì em cần có hàm kiểm tra số i có phải là 1 số NT hay không. Nếu là 1 số NT thì sẽ in ra và tăng giá trị biến đếm count_SNT lên 1 đơn vị. Nếu count_SNT bằng với số N thì nghĩa là đã in đủ N số NT đầu tiên, khi đó ta sẽ break ra khỏi vòng lặp và kết thúc chương trình.
#include"stdio.h"boolSNT(intx){inti;if(x1)returnfalse;for(i=2;ix/2;++i)if(x%i==0)returnfalse;returntrue;}intmain(){intn,count_SNT;inti;do{printf("\nNhapvaosoN(N>0):N=");scanf("%d",&n);}while(n0);i=2;count_SNT=0;while(true){if(SNT(i)){printf("%d",i);++count_SNT;}++i;if(count_SNT==n)break;}return0;}