© 2017

Viết chương trình in ra các số nguyên tố từ 1 đến n với n là số nguyên được nhập từ bàn phím trong C

NLD Code - Viết chương trình in ra các số nguyên tố từ 1 đến n với n là số nguyên được nhập từ bàn phím trong C. Số nguyên tố là số chỉ có 2 ước số là 1 và chính nó và số đó phải lớn hơn 1.

Viết chương trình in ra các số nguyên tố từ 1 đến n với n là số nguyên được nhập từ bàn phím trong C. Số nguyên tố là số chỉ có 2 ước số là 1 và chính nó và số đó phải lớn hơn 1.

Câu hỏi

  • Viết chương trình in ra các số nguyên tố từ 1 đến n với n là số nguyên được nhập từ bàn phím trong C.

Gợi ý

  • Chúng ta sử dụng vòng lặp for và lệnh if else để giải quyết bài toán trên.

Tiến hành code

Chèn các thư viện vào file hiện hành

#include<stdio.h>
#include<conio.h>

Khai báo biến kiểu dữ liệu int

int n, s = 0, i, j, dem;

In ra thông báo nhận giá trị x nhập vào

printf(" - Nhap n = ");

Nhận giá trị n người dùng nhập vào

scanf("%d",&n);

Chạy vòng lặp for từ 2 đến n vì 1 không phải là số nguyên tố

for(i = 2; i <= n; i++){        
    
}

Gán biến dem bằng 0; mục đích để đếm ước số của i

dem = 0;

Sử dụng vòng lặp for để tìm các ước số từ 2 đến 1/2 của i

for(j = 2;j <= i/2; j++){

} 

Sử dụng lệnh if để lấy số dư của i chia j. Nếu số dư bằng 0 thì biến dem sẽ cộng thêm 1

if(i % j == 0){
    dem++;
}

Sử dụng lệnh if để in ra các số nguyên tố nếu biến dem bằng 0

if(dem == 0){
    printf(" => %5d",i);
}

Code hoàn chỉnh

// http://nguyenlediep.com

#include<stdio.h>
#include<conio.h>
main(){
    printf("\n");      
    int n, s = 0, i, j, dem;
    printf(" - Nhap n = ");
    scanf("%d",&n);
    printf(" => Cac so nguyen to tu 1 den n la:");
    for(i = 2; i <= n; i++){
        dem = 0;
        for(j = 2;j <= i/2; j++){
            if(i % j == 0){
                dem++;
            }
        }        
        if(dem == 0){
            printf("%5d",i);
        }
    }
    printf("\n >>>>> nldc.vn <<<<<\n");
}  

Kết quả

  • Lưu C code thành file .cpp, nhấn F9 để biên dịch chương trình sau đó nhấn F10 ta được:
Chia sẻ
Nguyễn Lê Điệp

Nguyễn Lê Điệp

Có sở thích lập trình, viết lách nên đã từng tham gia ở một số diễn đàn, đến năm 2017 mới có điều kiện sáng lập ra blog NguyenLeDiep.Com Đang học tập và làm việc tại thành phố Hồ Chí Minh.