6+5=11, cách thay thế array_sum(str_split).">
 Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> PHP

Chương trình PHP tính tổng các chữ số của một số

Ví dụ

<?php
function sum_of_digits($my_num) {
    $sum = 0;
    for ($i = 0; $i < strlen($my_num); $i++) {
        $sum += $my_num[$i];
    }
    return $sum;
}
$my_num = "65";
print_r("The sum of digits is ");
echo sum_of_digits($my_num);
?>

Kết quả

The sum of digits is 11

Giải thích

Hàm sum_of_digits nhận số nguyên dạng chuỗi. Khởi tạo $sum = 0, duyệt qua độ dài chuỗi, cộng ký tự tại vị trí $i vào sum (PHP tự chuyển char thành int). Trả về tổng. Gọi hàm với giá trị "65": 6+5=11.

function sum_of_digits($my_num) {
    $sum = 0;
    for ($i = 0; $i < strlen($my_num); $i++) {
        $sum += $my_num[$i];
    }
    return $sum;
}

Lưu ý: Cách này hoạt động vì PHP cho phép truy cập ký tự chuỗi như mảng ($str[$i]) và tự ép kiểu khi cộng số. Cách khác: array_sum(str_split($num)).