Validation & verification · Kiểm tra tính hợp lệ & Xác minh
Why validate input
- Validation checks that input is sensible before the program uses it.
- "Garbage in, garbage out" — bad data leads to wrong answers.
- The program decides to accept or reject the value.
Tại sao cần xác minh đầu vào
- Xác minh kiểm tra xem dữ liệu đầu vào có hợp lý hay không trước khi chương trình sử dụng.
- "Dữ liệu rác vào, dữ liệu rác ra" — dữ liệu kém dẫn đến đáp án sai.
- Chương trình quyết định chấp nhận hoặc từ chối giá trị đó.
The validation steps · Các bước kiểm tra tính hợp lệ
Read the input, check it, then accept or reject — bad data never gets used. · Đọc dữ liệu đầu vào, kiểm tra xem có hợp lệ không, sau đó chấp nhận hoặc bác bỏ — dữ liệu xấu không bao giờ được sử dụng.
Range check
- A range check makes sure a number is between a low and a high limit.
- Example: a month must be from 1 to 12.
Kiểm tra phạm vi
- Một kiểm tra phạm vi đảm bảo một số nằm giữa giới hạn thấp và cao.
- Ví dụ: một tháng phải nằm từ 1 đến 12.
month = 13
if 1 <= month <= 12:
print("Accepted")
else:
print("Rejected")
Length check
- A length check makes sure text is not too short or too long.
len(text)gives the number of characters.
Kiểm tra độ dài
- Kiểm tra độ dài đảm bảo văn bản không quá ngắn hoặc quá dài.
len(text)trả về số lượng ký tự.
password = "abc"
if len(password) >= 8:
print("Accepted")
else:
print("Too short")
Presence check
- A presence check makes sure something was actually entered.
- An empty string
""means the user typed nothing.
Kiểm tra sự hiện diện
- Kiểm tra sự hiện diện đảm bảo rằng thông tin thực sự đã được nhập vào.
- Chuỗi rỗng
""có nghĩa là người dùng không gõ gì cả.
Verification: checking the copy
- Verification checks that data was copied or typed correctly.
- A double-entry check asks for the value twice and compares them.
- A visual check means a human reads it back on screen.
Xác minh: kiểm tra bản sao
- Xác minh kiểm tra xem dữ liệu có được sao chép hoặc gõ chính xác hay không.
- Kiểm tra nhập hai lần yêu cầu nhập giá trị hai lần và so sánh chúng.
- Kiểm tra trực quan có nghĩa là một con người đọc lại nội dung trên màn hình.
In the exam: types of check
- Know these validation checks: range, length, type, presence, format, check digit.
Trong kỳ thi: các loại kiểm tra
- Hãy nhớ các loại kiểm tra hợp lệ hóa: phạm vi, độ dài, kiểu, sự hiện diện, định dạng, chữ số kiểm tra.
IF Age >= 0 AND Age <= 120
THEN
OUTPUT "Valid"
ELSE
OUTPUT "Invalid"
ENDIF
Common mistakes
- Validation checks data is sensible (range, length, type); verification checks it was entered correctly.
- A range check needs both a lower and an upper limit.
Lỗi thường gặp
- Hợp lệ hóa kiểm tra dữ liệu có hợp lý (phạm vi, độ dài, kiểu); xác minh kiểm tra xem dữ liệu đã được nhập chính xác hay chưa.
- Kiểm tra phạm vi cần cả giới hạn dưới và giới hạn trên.
Now you try
- Each function returns
Trueto accept orFalseto reject. - Press Check answer to test your code.
Bây giờ bạn thử
- Mỗi hàm sẽ trả về
Trueđể chấp nhận hoặcFalseđể từ chối. - Nhấn Check answer (Kiểm tra câu trả lời) để thử mã của bạn.
Write valid_age(a) that returns True when a is a sensible age (0 to 120 inclusive), otherwise False. This is a range check. · Viết valid_age(a) trả về True khi a là độ tuổi hợp lý (từ 0 đến 120 bao gồm cả hai đầu mút), ngược lại trả về False. Đây là một kiểm tra phạm vi.
Click Run to see the output here. · Nhấn Chạy để xem kết quả ở đây.
Write valid_password(p) that returns True when the password is at least 8 characters long. This is a length check. · Viết valid_password(p) trả về True khi mật khẩu có độ dài ít nhất 8 ký tự. Đây là kiểm tra độ dài.
Click Run to see the output here. · Nhấn Chạy để xem kết quả ở đây.
Write is_present(s) that returns True when something was entered, and False for an empty string "". This is a presence check. · Viết is_present(s) trả về True khi người dùng đã nhập dữ liệu, và False nếu chuỗi rỗng "". Đây là kiểm tra sự hiện diện.
Click Run to see the output here. · Nhấn Chạy để xem kết quả ở đây.