Câu hỏi: Có n đôi giày cùng loại chỉ khác nhau về kích thước được xếp thành một hàng thứ tựu ngẫu nhiên. Chủ trò bí mật rút một chiếc giày và giấu đi, sau đó yêu cầu người chơi cho biết chiếc giày được giấu là chiếc giày trái hay phải và có số là bao nhiêu?
Cách làm thông thường để tìm ra chiếc giày còn thiếu là đi ghép các đôi giày, tuy nhiên cách làm này sẽ mất nhiều thời gian. Một cách làm đơn giản là dựa trên nhận xét: Nếu dãy không thiếu chiếc giày nào thì tổng số bằng 0, nên có thể xác định chiếc giày còn thiếu khi biết tổng các số trong dãy. Hình 4 là chương trình mà Hà My viết theo cách làm trên, tuy nhiên chương trình vẫn có lỗi. Em hãy giúp Hà My sửa lỗi để nhận được chương trình chạy được và cho ra kết quả đúng.
Lời giải:
Bạn đang xem: Có n đôi giày cùng loại chỉ khác nhau về kích thước được xếp thành một hàng thứ tựu ngẫu nhiên | Giải bài tập SGK Tin học 10
– Lỗi sai ngữ pháp
– Sửa: thay ngoặc tròn bằng ngoặc vuông
– Chương trình
print(“Nhập vào một dãy số size giày”)
shoes = [int(s) for s in input().split()]
sum = 0
for i in range(len(shoes)):
sum = sum + shoes[i]
if sum > 0:
print(“Chiếc giày bên trái, kích cỡ”, sum)
else:
print(“Chiếc giày bên phải, kích cỡ”, sum)
* Các loại lỗi trong Python
Để có thể xử lý những vấn đề chẳng may phát sinh trong khi lập trình, mọi người cần hiểu và phân biệt hai loại lỗi Python. Đó là lỗi cú pháp hoặc thực thi.
Lỗi cú pháp
Lỗi cú pháp được gọi là Syntax Error. Nó sẽ bị phát sinh khi người lập trình viết code không đúng theo những quy tắc của ngôn ngữ Python. Bạn có thể hiểu đơn giản như thế này thông qua ví dụ sau. Lỗi cú pháp khi sử dụng hàm Print() sẽ được hiển thị nếu chẳng may quá trình thao tác người viết nhầm thành >>>print “hello”.
Lỗi thực thi
Đây là loại lỗi sẽ gặp phải trong quá trình chạy chương trình sau khi hoàn thành viết code. Nó có tên là Runtime Error hay còn được hiểu theo cách gọi “Ngoại lệ” ( Exception). Ví dụ như trường hợp lập trình viên vô tình thực hiện phép chia cho 0 hay truy xuất file nào đó không tồn tại. Đó chính là lỗi thực thi liên quan đến vấn đề logic của chương trình đã viết. Có thể nói lỗi Python này thường khó phát hiện. Đặc biệt là không thể phát hiện ở trong thời gian viết code. Ngoài ra nó cũng chỉ được phát hiện trong lúc thực thi chương trình ở một số điều kiện nào đó
* Các lỗi cú pháp thường gặp
Khi bạn mắc lỗi trong Python lần đầu, sẽ rất hữu ích nếu bạn biết rõ lỗi đến từ đâu và cách khắc phục lỗi như thế nào. Trong phần dưới đây, bạn sẽ tìm hiểu sâu hơn về cách các lỗi trong Python xuất hiện và cách khắc phục chúng như sau:
Lạm dụng toán từ chuyển nhượng “=”
Trong Python, sẽ có một số trường hợp mà bạn không thể gán các đối tượng được, một ví dụ dưới đây là về chuỗi và hàm gọi như sau:
>>> len(‘hello’) = 5
File “”, line 1
SyntaxError: can’t assign to function call
>>> ‘foo’ = 1
File “”, line 1
SyntaxError: can’t assign to literal
>>> 1 = ‘foo’
File “”, line 1
SyntaxError: can’t assign to literal
Lỗi chính tả, sử dụng sai từ khoá
Các keyword trong Python là một tập hợp các từ được bảo vệ và chúng có những ý nghĩa đặc biệt trong Python. Đây là những từ khóa mà bạn không thể sử dụng như biến, hàm. Chúng là một phần của ngôn ngữ và chỉ được sử dụng trong ngữ cảnh mà Python cho phép.
Có ba cách sử dụng nhầm từ khóa mà bạn hay gặp như sau:
– Viết sau từ khóa
– Viết thiếu từ khóa
– Sử dụng sai từ khóa
Nếu bạn viết sai chính tả một từ khóa trong Python, bạn sẽ nhận lỗi cú pháp SyntaxError ngay lập tức.
Lỗi thiếu từ khoá
>>> for i range(10):
File “”, line 1
for i range(10):
^
SyntaxError: invalid syntax
Như ta có thể thấy, trong đoạn code trên, từ khóa in đã bị thiếu, traceback đã chỉ ra lỗi này và giúp cho bạn đi đúng hướng, Do vậy, bạn có thể sửa lại chương trình của mình khi nhận được thông báo.
>>> Xem toàn bộ: Soạn Tin 10 bài 15 Cánh diều: Thực hành với dữ liệu kiểu danh sách
Đăng bởi: Đại Học Đông Đô
Chuyên mục: Lớp 10, Tin Học 10