Ngu ngơ học làm web (66) - Số trong PHP

Tiếp theo của: Ngu ngơ học làm web (65) - Chuỗi trong PHP - phần 3
------

Phần 66. Số trong PHP

Đây là clip số 50:


Số trong PHP gồm hai loại: số nguyên và số thập phân.

Để kiểm tra một biến có chứa giá trị kiểu số hay không, sử dụng các hàm: is_numeric, is_int, is_float.

Để tạo một dãy số, sử dụng hàm range($start, $end, $loop).

Để làm tròn một số thập phân, sử dụng hàm:

- round(): làm tròn đến số nguyên gần nhất.

- ceil(): là tròn lên.

- floor(): làm tròn xuống.

Để tìm số nhỏ nhất, lớn nhất và tính tổng của một dãy số, sử dụng các hàm min(), max(), và array_sum() tương ứng.

Có thể sử dụng hàm sort(), sau đó lấy phần tử đầu và cuối để tìm số lớn nhất và nhỏ nhất của một dãy số.

Có thể chuyển một chuỗi các số  (ví dụ ‘1, 2, 3, 4’) thành một mảng, sau đó thực hiện tính toán trên mảng. Ví dụ,

$str = '1, 2, 3, 4';
$arr = explode(',', $str);
echo array_sum($arr);

Đây là clip số 51:


Sử dụng hàm rand(min, max), để tạo một số ngẫu nhiên nằm trong khoảng [min – max].

Để định dạng cách hiển thị của một số, sử dụng hàm number_format().

Sử dụng hàm abs() để trả về giá trị tuyệt đối của một số. Hàm lũy thừa là pow(x, y). Hàm khai căn bậc hai là sqrt().

Đây là clip số 52:


Đoạn mã tối giản phân số,

<?php
            $fraction = '18/9';
            $arrFraction = explode('/', $fraction);
            $ts = $arrFraction[0];
            $ms = $arrFraction[1];

            function UCLN($n1, $n2) {
                        for($i = 1; $i <= $n1; $i++) {
                                    if($n1 % $i == 0) { $uclnN1[] = $i; }
                        }
                        for($i = 1; $i <= $n2; $i++) {
                                    if($n2 % $i == 0) { $uclnN2[] = $i; }
                        }
                        $temp = array_intersect($uclnN1, $uclnN2);
                        $result = max($temp);
                        return $result;
            }
            $ucln = UCLN($ts, $ms);
            $ts = $ts/$ucln;
            $ms = $ms/$ucln;
            echo $ts.'/'.$ms;
?>

Đây là clip số 53:


Đoạn mã hàm tối giản phân số,

function optimizeFraction($fraction) {
                        $arrFraction = explode('/', $fraction);
                        $ucln = UCLN($arrFraction[0], $arrFraction[1]);
                        $arrFraction[0] /= $ucln;
                        $arrFraction[1] /= $ucln;
                        return $arrFraction;
            }

Đoạn mã nhân hai phân số,

$fraction1 = '8/2';
            $fraction2 = '6/3';
            $fraction1 = optimizeFraction($fraction1);
            $fraction2 = optimizeFraction($fraction2);
            $result[0] = $fraction1[0] * $fraction2[0];
            $result[1] = $fraction1[1] * $fraction2[1];

            $result = implode('/', $result);
-----------
Cập nhật [14/9/2020]
-----------
Xem thêm:
Tổng hợp các bài viết về Ngu ngơ học làm web