PHP Armstrong Number – Kiểm tra số Armstrong trong PHP

Trong lập trình, số Armstrong là một số có giá trị bằng tổng lập phương của các chữ số của nó. Các ví dụ về số Armstrong bao gồm: 0, 1, 153, 371, 407, 471, v.v. Trong bài viết này, chúng ta sẽ tìm hiểu về PHP Armstrong Number, cách hoạt động và những ưu/nhược điểm của nó.

Lập Trình Viên mời bạn cùng tham khảo chi tiết nội dung bên dưới. Bài viết này nằm trong chuyên đề hướng dẫn PHP từ cơ bản đến nâng cao tại dự án Phát Triển Website.

Tổng quan PHP Armstrong Number là gì

PHP Armstrong Number là một chương trình lập trình được viết bằng PHP để kiểm tra xem một số có phải là số Armstrong hay không. Điều này được thực hiện bằng cách so sánh giá trị của số đó với tổng lập phương của các chữ số của nó.

Số Armstrong là một số mà tổng lập phương của các chữ số của nó bằng giá trị của nó. Ví dụ, số 153 là số Armstrong vì 1^3 + 5^3 + 3^3 = 153.

Hướng dẫn PHP Armstrong Number

Để kiểm tra một số có phải là số Armstrong hay không, làm theo các bước sau:

  1. Lưu số đó vào một biến.
  2. Tạo một biến cho tổng.
  3. Chia số đó cho 10 cho đến khi thương là 0.
  4. Lập phương số dư.
  5. So sánh biến tổng và biến số.

Dưới đây là ví dụ kiểm tra xem số 407 có phải là số Armstrong hay không:

<?php  
$num = 407;  
$total=0;  
$x=$num; 
while($x!=0)  
{  
$rem=$x%10;  
$total=$total+$rem*$rem*$rem;
$x=$x/10;  
}  
if($num==$total)  
{  
echo "Yes it is an Armstrong number";  
}  
else  
{  
echo "No it is not an armstrong number";  
}  
?>

Các ví dụ về PHP Armstrong Number

Dưới đây là một số ví dụ về chương trình PHP kiểm tra số nguyên có phải là số Armstrong hay không:

  • Ví dụ 1:
<?php
$number = 153;

$sum = 0;

for ($i = 0; $i < strlen($number); $i++) {
    $sum += pow($number[$i], 3);
}

if ($number == $sum) {
    echo "Số $number là số Armstrong.";
} else {
    echo "Số $number không phải là số Armstrong.";
}
?>

Chương trình này sẽ sử dụng vòng lặp for để duyệt qua tất cả các chữ số của số $number. Trong vòng lặp, chương trình sẽ tính toán giá trị của chữ số đó lên lũy thừa 3. Sau đó, chương trình sẽ cộng tổng các giá trị đó lại. Cuối cùng, chương trình sẽ so sánh tổng với số $number. Nếu tổng bằng số $number, thì số $number là số Armstrong. Ngược lại, số $number không phải là số Armstrong.

  • Ví dụ 2:
<?php
$number = 153;

$sum = 0;
$temp = $number;

while ($temp > 0) {
    $digit = $temp % 10;
    $sum += pow($digit, 3);
    $temp = $temp / 10;
}

if ($number == $sum) {
    echo "Số $number là số Armstrong.";
} else {
    echo "Số $number không phải là số Armstrong.";
}
?>

Chương trình này cũng sẽ sử dụng vòng lặp để duyệt qua tất cả các chữ số của số $number. Tuy nhiên, thay vì sử dụng vòng lặp for, chương trình này sẽ sử dụng vòng lặp while. Trong vòng lặp, chương trình sẽ lấy chữ số cuối cùng của số $number và tính toán giá trị của chữ số đó lên lũy thừa 3. Sau đó, chương trình sẽ cộng tổng các giá trị đó lại. Cuối cùng, chương trình sẽ so sánh tổng với số $number. Nếu tổng bằng số $number, thì số $number là số Armstrong. Ngược lại, số $number không phải là số Armstrong.

  • Ví dụ 3:
<?php
function isArmstrong($number) {
    $sum = 0;
    $temp = $number;

    while ($temp > 0) {
        $digit = $temp % 10;
        $sum += pow($digit, 3);
        $temp = $temp / 10;
    }

    return $number == $sum;
}

$number = 153;

if (isArmstrong($number)) {
    echo "Số $number là số Armstrong.";
} else {
    echo "Số $number không phải là số Armstrong.";
}
?>

Chương trình này sẽ sử dụng một hàm để kiểm tra số nguyên có phải là số Armstrong hay không. Hàm isArmstrong() chấp nhận một tham số là số nguyên cần kiểm tra. Hàm này sẽ sử dụng vòng lặp while để duyệt qua tất cả các chữ số của số $number và tính toán giá trị của chữ số đó lên lũy thừa 3. Sau đó, hàm này sẽ cộng tổng các giá trị đó lại. Cuối cùng, hàm này sẽ trả về giá trị true nếu số $number là số Armstrong và false nếu số $number không phải là số Armstrong.

Đây chỉ là một số ví dụ về cách kiểm tra số nguyên có phải là số Armstrong hay không trong PHP. Có nhiều cách khác nhau để thực hiện nhiệm vụ này.

Ưu và Nhược điểm PHP Armstrong Number

Ưu điểm:

  • Dễ hiểu và triển khai.
  • Cho phép kiểm tra nhanh chóng xem một số có phải là số Armstrong hay không.

Nhược điểm:

  • Chỉ kiểm tra được các số nguyên dương.
  • Phải lưu số đó vào bộ nhớ trước khi kiểm tra.

Lời khuyên PHP Armstrong Number

Nếu bạn đang tìm cách kiểm tra xem một số có phải là số Armstrong hay không, chương trình PHP Armstrong Number sẽ là một giải pháp tốt cho bạn. Tuy nhiên, hãy nhớ rằng chương trình này chỉ áp dụng cho các số nguyên dương và bạn cần lưu số đó vào bộ nhớ trước khi kiểm tra.

1. Số nào được coi là số Armstrong?

Số Armstrong là một số có giá trị bằng tổng lập phương của các chữ số của nó.

2. Chương trình PHP Armstrong Number hoạt động như thế nào?

Chương trình này sử dụng một vòng lặp để tách các chữ số trong số và tính tổng lập phương của chúng. Sau đó, chương trình so sánh kết quả với giá trị ban đầu của số để xác định liệu số đó có phải là số Armstrong hay không.

3. Tôi có thể sử dụng PHP Armstrong Number để kiểm tra số âm không?

Không, chương trình này chỉ áp dụng cho các số nguyên dương, vì chỉ có các số dương mới có thể tính tổng lập phương của các chữ số.

4. Có bao nhiêu số Armstrong?

Có vô số số Armstrong, nhưng một số ví dụ phổ biến bao gồm: 0, 1, 153, 371, 407, 471, v.v.

5. Tại sao tôi nên sử dụng PHP Armstrong Number?

Nếu bạn đang cần kiểm tra xem một số có phải là số Armstrong hay không, PHP Armstrong Number là một giải pháp tốt và dễ hiểu để áp dụng.