Số nguyên tố (prime) là số nguyên lớn hơn 1 và chỉ có ước là 1 và chính nó.
Một số nguyên tố đầu tiên:
2, 3, 5, 7, 11, 13, 17
Chương trình kiểm tra số nguyên tố dùng hàm:
Ví dụ
#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 << " là số nguyên tố" << endl;
else
cout << n << " không phải số nguyên tố" << endl;
}
int main() {
isPrime(17);
isPrime(20);
return 0;
}
Kết quả đầu ra
17 là số nguyên tố 20 không phải số nguyên tố
Hàm isPrime() kiểm tra số nguyên tố. Vòng lặp chạy từ 2 đến n/2. Mỗi giá trị chia n. Nếu dư = 0, n chia hết cho số khác 1 và chính nó, không phải nguyên tố, gán flag = 1 và break thoát vòng lặp:
for (i = 2; i <= n / 2; ++i) {
if (n % i == 0) {
flag = 1;
break;
}
}
Nếu flag vẫn 0 thì là nguyên tố, hiển thị. Nếu flag = 1 thì không phải:
if (flag == 0) cout << n << " là số nguyên tố"; else cout << n << " không phải số nguyên tố";
Hàm isPrime() gọi từ main() cho 17 và 20:
isPrime(17); isPrime(20);