Kho tàng tài liệu học tập phong phú.

Tin học 10 Cánh diều Bài 13: Thực hành dữ liệu kiểu xâu

1.1. Xóa ký tự trong xâu

* Yêu cầu:

a) Em hãy viết chương trình tạo một xâu mới từ xâu s đã cho bằng việc xóa những ký tự được chỉ định trước.

Hướng dẫn: xóa ký tự tương đương với việc thay ký tự đó bằng ký tự rỗng (Hình 1)

b) Em hãy chạy thử chương trình và kiểm tra kết quả.

Ví dụ:

Hình 1: Chương trình xóa kí tự trong xâu

* Hướng dẫn thực hiện:

a)

– Bước 1. Tạo xâu s bằng lệnh str(input())

– Bước 2. Tạo xâu c bằng lệnh input()

– Bước 3.  Trong xâu s, dùng lệnh replace để thay thế ký tự được nhập vào từ xâu c, bằng ký tự trống ‘’.

– Bước 4. Hiển thị kết quả bằng lệnh print().

b) Chạy chương trình và kiểm tra kết quả

Chương trình

Kết quả

1.2. Giúp bạn tìm và sửa lỗi chương trình

* Yêu cầu:

Giúp bạn tìm và sửa lỗi chương trình

Tên tệp thường gồm hai phần: phần tên và phần mở rộng được ngăn cách nhau bởi dấu chấm. Ví dụ, các tệp chương trình Python có phần mở rộng là “py”, các tệp văn bản có phần mở rộng là “doc” hoặc “docx”. Trong hệ điều hành Windows, tên tệp không phân biệt chữ hoa và chữ thường. Bạn Khánh Linh muốn viết chương trình (Hình 2) nhập vào một xâu là tên của tệp và kiểm tra xem tên tệp đó có phải là tên tệp của chương trình Python trong hệ điều hành Windows không.

Hình 2. Chương trình Khánh Linh viết

Khánh Linh đã nghĩ ra thuật toán, bằng cách lấy ra hai ký tự cuối cùng của xâu rồi so sánh với xâu “py”. Tuy nhiên, chương trình do Khánh Linh viết vẫn còn có lỗi. Em hãy giúp bạn Khánh Linh tìm và sửa lỗi để chương trình chạy được và đưa ra kết quả đúng.

Gợi ý: Nếu Python báo lỗi cú pháp, em hãy sửa hết lỗi cú pháp để chương trình chạy được. Sau đó hãy chạy thử với một số dữ liệu vào khác nhau, ví dụ “Hello.py”,  “introPython.doc”, “Hello.PY” và kiểm tra xem kết quả nhận được có đúng không.

* Hướng dẫn thực hiện:

Nếu nhập vào một xâu có độ dài nhỏ hơn 20 thì khi chạy chương trình sẽ báo lỗi.

Nếu nhập vào 1 xâu, ví dụ như “baitap.PY’ thì chương trình của Linh cũng chạy không đúng. Do đó, chương trình cần sửa lại như sau:

Chương trình

 

Kết quả

1.3. Xác định tọa độ

* Yêu cầu:

a) Tìm hiểu bài toán: Robot thám hiểm Sao Hỏa đang ở điểm có tọa độ (0,0) nhận được dòng lệnh điều khiển từ Trái Đất. Dòng lệnh chỉ chứa các ký tự từ tập ký tự {E, S, W, N}, mỗi kí tự là một lệnh di chuyển với quãng đường bằng một đơn vị độ dài. Lệnh E – đi về hướng đông, lệnh S – đi về hướng nam, lệnh W – đi về hướng tây, và lệnh N – đi về hướng bắc. Trục Ox của hệ tọa độ chạy từ tây sang đông, trục Oy – chạy từ nam lên bắc. Em hãy xác định tọa độ của robot sau khi thực hiện lệnh di chuyển nhận được.

Hình 3: Đường đi của robot

Ví dụ: Với dòng lệnh “ENENWWWS”, sau khi thực hiện robot sẽ tới vị trí (-1;1) (Hình 3).

Gợi ý:  Tọa độ x của đích tới bằng số lượng ký tự “E” trừ số lượng ký tự “W”.

Tọa độ y của đích tới bằng số lượng ký tự “N” trừ số lượng ký tự “S”.

b) Em hãy đọc hiểu và chạy thử chương trình ở Hình 4 và cho biết chương trình đó có giải quyết được bài toán ở mục a) hay không?

Hình 4: Chương trình bài toán xác định tọa độ

* Hướng dẫn thực hiện:

a) Vì “E” và “W” ngược nhau, nên tọa độ x của đích tới bằng số lượng ký tự “E” trừ số lượng ký tự “W”. “N” và “S” ngược nhau nên tọa độ y của đích tới bằng số lượng ký tự “N” trừ số lượng ký tự “S”.

b) Chạy thử chương trình với một vài bộ test, ta thấy chương trình đã giải quyết được bài toán ở mục a)

Chương trình thực hiện như sau:

– Nhập vào dòng lệnh (chính là hướng đi của robot)

– Đếm số lượng ký tự “E”, “W”, ”N”, “S”.

– Lấy số lượng ký tự “E” trừ “W” và “N” trừ “S” sẽ ra tọa độ của robot

Chương trình

Kết quả

Test 1

Test 2