Chuyển đến nội dung
Nội dung học:
1. Vòng lặp for
- Dùng khi biết trước số lần lặp.
- Cú pháp:
for ($i = gia_tri_bat_dau; $i < dieu_kien_ket_thuc; $i++) { // Mã lệnh thực thi }
- Ví dụ:
for ($i = 1; $i <= 5; $i++) { echo "Lần lặp thứ $i \n"; }
2. Vòng lặp while
- Dùng khi chưa biết số lần lặp trước nhưng có điều kiện lặp.
- Cú pháp:
while (dieu_kien) { // Mã lệnh thực thi }
- Ví dụ:
$i = 1; while ($i <= 5) { echo "Lần lặp thứ $i \n"; $i++; }
3. Vòng lặp do...while
- Luôn thực hiện mã lệnh ít nhất một lần trước khi kiểm tra điều kiện.
- Cú pháp:
do { // Mã lệnh thực thi } while (dieu_kien);
- Ví dụ:
$i = 1; do { echo "Lần lặp thứ $i \n"; $i++; } while ($i <= 5);
4. Vòng lặp foreach
- Dùng để lặp qua các phần tử trong mảng.
- Cú pháp:
foreach ($mang as $gia_tri) { // Mã lệnh thực thi }
hoặc: foreach ($mang as $key => $gia_tri) { // Mã lệnh thực thi }
- Ví dụ:
$ds = ["Alice", "Bob", "Charlie"]; foreach ($ds as $ten) { echo "$ten \n"; }
Bài tập thực hành:
- Bài tập 1: In bảng cửu chương
- Yêu cầu: Sử dụng vòng lặp
for
để in bảng cửu chương từ 1 đến 10.
- Gợi ý:
for ($i = 1; $i <= 10; $i++) { for ($j = 1; $j <= 10; $j++) { echo "$i x $j = " . ($i * $j) . "\n"; } echo "\n"; }
- Bài tập 2: Tìm số chia hết cho 3
- Yêu cầu: In các số từ 1 đến 50, bỏ qua các số chia hết cho 3.
- Gợi ý:
for ($i = 1; $i <= 50; $i++) { if ($i % 3 == 0) { continue; } echo "$i \n"; }
- Bài tập 3: Tổng các số trong mảng
- Yêu cầu: Sử dụng vòng lặp
foreach
để tính tổng các phần tử trong một mảng.
- Gợi ý:
$numbers = [1, 2, 3, 4, 5]; $sum = 0; foreach ($numbers as $num) { $sum += $num; } echo "Tổng là $sum";
- Bài tập 4: Lặp với
while
và tính giai thừa
- Yêu cầu: Tính giai thừa của một số nguyên dương nhập vào.
- Gợi ý:
$n = 5; $factorial = 1; $i = 1; while ($i <= $n) { $factorial *= $i; $i++; } echo "Giai thừa của $n là $factorial";
Lưu ý quan trọng:
- Sử dụng vòng lặp hợp lý để tối ưu mã nguồn.
- Tránh lặp vô hạn bằng cách đảm bảo điều kiện kết thúc chính xác.
- Sử dụng
break
để thoát khỏi vòng lặp khi cần thiết và continue
để bỏ qua lần lặp hiện tại.