Bài 16: Kỹ thuật đặt cờ hiệu trong php

Bài trước chúng ta đã tìm hiểu kỹ thuật đặt lính canh trong php, vậy thì trong bài này ta sẽ tìm hiểu một kỹ thuật khác cũng khá hay đó là kỹ thuật đặt cờ hiệu được code bằng ngôn ngữ lập trình php.

1. Kỹ thuật đặt cờ hiệu là gì?

Tương tự bài trước mình sẽ đưa ra một ví dụ thực tế để các bạn dễ hình dung.

Ví dụ 1: Quy trình của đội bóng trước khi ra sân.

Giả sử có một đội bóng trước khi ra sân  thi đấu các bác sỹ kiểm tra sức khỏe của từng người, Nếu một trong những cầu thủ ra sân có sử dụng chất kích thích thì cả đội bóng sẽ không được thi đâu và sẽ bị kỉ luật. Cách làm như sau: tôi sẽ duyệt qua từng người và kiểm tra, chỉ cần có 1 cầu thủ thôi là kết luận đc đội bóng này không đủ điều kiện. Đây gọi là kỹ thuật đặt cờ hiệu.

Ví dụ 2: Kiểm tra xem các số từ 1 đến 1000 có số nào chia hết cho 40 không?

Để giải bài này tôi sẽ dùng kỹ thuật đặt cờ hiệu lặp từ 1 cho tới 1000 rồi chia lấy dư cho 40, chỉ cần có một số chia hết cho 40 là tôi có thể quyết định rằng tồn tại số chia hết cho 40 trong khoảng từ 1 đến 1000. Sau đây là hàm có sử dụng kỹ thuật này.

 

// Khai báo cờ và gán cho cờ có giá trị là không tìm thấy
$flag = false;
 
// duyệt qua từng số
for ($i = 1; $i <= 1000; $i++){
    if ($i % 40 == 0){
        $flag = true;
    }
}
 
if ($flag == true){
    echo 'Có';
}
else {
    echo 'Không';
}

 

2. Khi nào sử dụng kỹ thuật đặt cờ hiệu

Kỹ thuật đặt cờ hiệu dùng để duyệt mảng danh sách và kiểm tra từng phần tử để đưa ra kết quả cuối cùng.

Kỹ thuật này thường dùng để kiểm tra các dữ liệu đầu vào trước khi lưu vào hệ thống, kiểm tra một số tồn tại trong danh sách không, kiểm tra trong danh sách có số nguyên tố không, … Đây là một vài ví dụ thôi chứ thực tế bạn có thể dùng nó cho nhiều trường hợp lắm.

3. Lời kết

Các bạn thấy kỹ thuật này cũng khá là ngắn gọn phải không nào, nó được sử dụng rất nhiều trong việc lập trình web php nên hy vọng qua bài này các bạn biết vận dụng nó trong dự án của riêng mình nhé. Bài tiếp theo ta sẽ tìm hiểu một thuật toán sắp xếp, không phải là thuật toán sắp xếp nổi bọt mà là thuật toán sắp xếp chọn.

Khóa học nên xem

Nguồn: freetuts.net