Làm quen cách viết các chương trình đơn giản, cách sử dụng CÂU ĐIỀU KIỆN IF và VÒNG LẶP FOR.
Yêu cầu bài toán
Viết chương trình nhập số nguyên dương n và kiểm tra xem n có phải là số nguyên tố hay không.
Bạn đang xem: Kiểm tra N có phải là số nguyên tố hay không ?
Ví dụ:
- Input: 3
- Output: 3 là số nguyên tố
READ MORE:
Hướng dẫn
Định nghĩa
Số nguyên tố là số tự nhiên lớn hơn 1, chỉ có 2 ước là 1 và chính nó. Ví dụ: 2, 3, 5, 7, 11, … là các số nguyên tố, trong đó số 2 là số nguyên tố chẵn duy nhất.
Xem thêm : Bổ túc là gì? Học bổ túc khác học chính quy như thế nào?
Cũng như tính chất của số nguyên dương, chúng ta chỉ tìm thấy số nguyên tố nhỏ nhất chứ không thể tìm thấy số nguyên tố lớn nhất.
Thuật toán
Dựa vào định nghĩa của số nguyên tố, chúng ta có thể giải bài toán như sau:
- Bước 1: Nhập vào số nguyên dương n.
- Bước 2: Kiểm tra nếu n < 2 thì kết luận n không phải là số nguyên tố.
- Bước 3: Lặp từ 2 tới (n-1), nếu trong khoảng này tồn tại số mà n chia hết thì kết luận n không phải là số nguyên tố, ngược lại n là số nguyên tố.
Lưu ý: Vẫn còn rất nhiều cách khác nhưng chung quy lại vẫn phải bám vào định nghĩa số nguyên tố là gì. Ví dụ trong vòng lặp điểm dừng sẽ là (n/2) thay vì (n-1) vì theo lý thuyết thì một số không bao giờ chia hết cho số lớn hơn một nửa của nó. Ví dụ số 9 thì số một nửa của nó là số (9 / 2 = 4), như vậy ta chỉ cần kiểm tra các số từ 2, 3, 4 mà thôi, còn các số 5, 6, 7, 8 chắc chắn 9 sẽ không chia hết.
source code tham khảo:
include
using namespace std;
bool KTSNT(int x) {
if(x < 2)
return false;
for(int i = 2; i <= x/2; i++)
if(x % i == 0)
return false;
return true;
}
void main() {
unsigned int n;
cout << "Nhap vao so nguyen duong n: ";
cin >> n;
if(KTSNT(n) == true)
cout << n << " la so nguyen to!";
else
cout << n << " khong la so nguyen to!";
cout << endl;
}
Kết luận
Xem thêm : Thượng Lộ Bình An tiếng Anh | 36+ mẫu câu chúc hay nhất 2024
Bạn có thể củng cố kiến thức C++ từ khóa LẬP TRÌNH C++ CƠ BẢN.
Hoặc tìm hiểu thêm các bài tập khác trong khóa Bài toán kinh điển trong lập trình.
Cảm ơn các bạn đã theo dõi bài viết. Hãy đặt câu hỏi hoặc góp ý của bạn để phát triển bài viết tốt hơn. Đừng quên “Luyện tập – Thử thách – Không ngại khó”.
READ MORE:
Thảo luận
Nếu bạn có bất kỳ khó khăn hay thắc mắc gì về khóa học, đừng ngần ngại đặt câu hỏi trong phần BÌNH LUẬN bên dưới hoặc trong mục HỎI & ĐÁP trên thư viện Howkteam.com để nhận được sự hỗ trợ từ cộng đồng.
Nguồn: https://ispacedanang.edu.vn
Danh mục: Học tập