16/09/2018, 18:17

Liệt kê tất cả các số nguyên tố nhỏ hơn n

PHP Đề bài : viết chương trình liệt kê tất cả các số nguyên tố nhỏ hơn n. Định nghĩa Số nguyên tố là số lớn hơn 1 và chỉ chia hết cho 1 và chính nó. Ví dụ: 2, 3, 5, 7, 11, 13, 17, … là những số nguyên tố. Chú ý : Số 0 và 1 không phải là số nguyên tố. Chỉ có số 2 ...

PHP

Đề bài: viết chương trình liệt kê tất cả các số nguyên tố nhỏ hơn n.

Định nghĩa

Số nguyên tố là số lớn hơn 1 và chỉ chia hết cho 1 và chính nó.
Ví dụ: 2, 3, 5, 7, 11, 13, 17, … là những số nguyên tố.
Chú ý: Số 0 và 1 không phải là số nguyên tố. Chỉ có số 2 là số nguyên tố chẵn, tất cả các số chẵn khác không phải là số nguyên tố vì chúng chia hết cho 2.

Lời giải

File: songuyento.php

<?php
/**
 * check so nguyen to
 *
 * @author viettuts.vn
 * @param n: so nguyen duong
 * @return boolean
 *         true la so nguyen so,
 *         false khong la so nguyen to
 */
function isPrimeNumber($n) {
    // so nguyen n < 2 khong phai la so nguyen to
    if ($n < 2) {
        return false;
    }
    // check so nguyen to khi n >= 2
    $squareRoot = sqrt($n);
    for ($i = 2; $i <= $squareRoot; $i++) {
        if ($n % $i == 0) {
            return false;
        }
    }
    return true;
}

$n = 100;
echo ("Tất cả các số nguyên tố nhỏ hơn $n là: <br>");
if ($n >= 2) {
    echo "2";
}
for ($i = 3; $i < $n; $i+=2) {
    if (isPrimeNumber($i)) {
        echo (" " . $i);
    }
}
?>

Kết quả:

Nhập n = 100
Tất cả các số nguyên tố nhỏ hơn 100 là: 
2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97
PHP
0