Thử thách: Tính giai thừa
Thuộc phần Kiến thức cơ bản trong hành trình PHP của Coddy. Bài học 69 trên 71.
Thử thách
DễĐọc một dòng đầu vào:
- Một số nguyên không âm (ví dụ:
5)
Tạo một hàm (function) có tên factorial nhận một tham số:
$ncó kiểuint
Hàm cần khai báo kiểu trả về là int và tính giai thừa của số đã cho bằng vòng lặp for.
Giai thừa của một số n (viết là n!) là tích của tất cả các số nguyên dương từ 1 đến n.
Hãy nhớ:
- Bắt đầu với giá trị kết quả là
1 - Nhân kết quả với từng số từ
1đến$n - Giai thừa của
0là1
Gọi hàm với giá trị đầu vào và in ra kết quả trả về.
Ví dụ:
5! = 5 × 4 × 3 × 2 × 1 = 120
3! = 3 × 2 × 1 = 6
1! = 1
0! = 1 (by definition)Tự làm thử
<?php
// Đọc đầu vào
$n = intval(fgets(STDIN));
// TODO: Tạo hàm (function) tên là 'factorial' với các yêu cầu sau:
// Nhận một tham số (parameter): $n có kiểu int
// Khai báo kiểu trả về là int
// Dùng vòng lặp for để tính giai thừa
// Trả về kết quả
// Gọi hàm và in ra kết quả
echo factorial($n);
?>Tất cả bài học trong Kiến thức cơ bản
4Toán tử so sánh và logic
Toán tử so sánhBằng nhau và đồng nhấtToán tử logic phần 1Toán tử logic phần 2Ôn tập: logic đơn giản2Biến và kiểu dữ liệu
SốChuỗi và dấu ngoặc képGiá trị BooleanQuy ước đặt tênÔn tập: khởi tạo biếnBiến rỗngNối chuỗiNhận đầu vào từ người dùngChuyển đổi sang kiểu dữ liệu khác5Logic điều kiện
Câu lệnh ifIf và elseToán tử ba ngôiToán tử kết hợp nullCâu lệnh switchÔn tập: đưa ra quyết định3Các toán tử cơ bản
Toán tử số họcToán tử chia lấy dưToán tử lũy thừaPhép gán kết hợpTăng/giảmThứ tự ưu tiên của toán tửÔn tập: phép tính đơn giảnToán tử chuỗiTự luyện tập: Trình biên dịch PHP online