Viết thủ tục trong Scratch kiểm tra dữ liệu nhập vào có phải là một số thập phân không

Like Tweet Pin it Share Share Email

Hôm nay có một bạn hỏi mình về lập trình Scratch nội dung câu hỏi như sau: “Làm sao để khi nhập vào một số thập phân thì sẽ kiểm tra số nhập vào có đúng không? Nếu nhập không đúng thì yêu cầu nhập lại cho đến khi nhập đúng thì thôi” Mình xin chia sẻ ý tưởng để các bạn thực hiện như sau:

Ý tưởng bẫy lỗi nhập liệu số thực trong Scratch

Trong Scratch không phân biệt kiểu dữ liệu, vì vậy theo ý mình muốn bẫy lỗi nhập liệu số thực thì bạn cần can thiệp vào từng kí tự nhập vào, nếu kí tự nhập vào mà chỉ toàn các chữ số từ 0 đến 9 hoặc có thêm 1 đấu “,” không phải ở đầu hoặc cuối thì là đúng. Ngược lại dữ liệu nhập vào là sai.

HD Viết thủ tục Scratch kiểm tra dữ liệu nhập vào có phải là một số thực không

Các bạn nhớ mình chỉ hướng dẫn trên ý tưởng trên mà thôi nha

Bước 1: Ta sẽ xây dựng đoạn chương trình chính như sau:

Các bạn hãy kéo thả để được khối lênh như sau:

Giải thích sơ qua như sau:

Biến “Kiểm tra” : Chỉ nhận hai giá trị 0 và 1 (0 là số nhập vào không đúng còn 1 là số nhập vào là số thực)

Vòng lặp yêu cầu nhập liệu và thông báo sẽ kết thúc khi người dùng nhập liệu đúng (Kiểm tra = 1). Mở đầu ta cho biến “Kiểm tra” = 0 để vòng lặp luôn chạy.

Dữ liệu nhập vào được lưu trong biến “Số”, trong vòng lặp có gọi thủ tục “Kiểm tra dữ liệu nhập vào” để xem dữ liệu có đúng là số thực không.

Bước 2: Xây dự thủ tục kiểm tra dữ liệu đầu vào

Mình gợi ý code như sau:

Đoạn chương trình trên mới chỉ giúp bạn kiểm tra xem tất cả các kí tự trong chuỗi nhập vào có kí tự nào không phải là số hoặc dấu phẩy không nếu có một kí tự lạ thì chắc chắn dữ liệu nhập vào là sai.

Mình đã sử dụng kĩ thuật “tìm phản ví dụ” để kiểm tra. Đầu tiên cứ cho Kiểm tra =1 sau đó trong vòng lặp nếu thấy có kí tự lạ thì cho kiểm tra =0 khi đó vòng lặp sẽ thoát ra, còn nếu chạy hết vòng lặp mà không có kí tự lạ thì hiển nhiên số nhập vào đúng.

Trong câu lệnh nếu mình đang để trống cho các bạn tự phát triển tiếp, bạn sẽ phải kiểm tra xem có mấy dấu phẩy, có phải dấu phẩy đứng đầu hay cuối không.

sau khi hoàn thiện và chạy chương trình sẽ thế này nếu nhập đúng

Bạn nào hoàn chỉnh code hay có ý tưởng nào hay hơn vui lòng chia sẻ để cùng học hỏi nha. Một kĩ thuật bạn không nên bỏ qua đó là: Kỹ thuật đo khoảng cách trong Scratch

Comments (0)

Trả lời

Your email address will not be published. Required fields are marked *