Chương trình sau có chức năng sắp xếp một dãy số cho trước

Trả lời Vận dụng 1 trang 148 Tin học 10 sách Kết nối tri thức hay nhất, chi tiết sẽ giúp học sinh dễ dàng làm bài tập Tin học 10.

1 786 24/10/2022


Giải Tin học 10 Kết nối tri thức Bài 30: Kiểm thử và gỡ lỗi chương trình

Vận dụng 1 trang 148 Tin học 10: Chương trình sau có chức năng sắp xếp một dãy số cho trước. Hãy kiểm tra xem chương trình có lỗi không? Nếu có thì tìm và sửa lỗi.

A = [10,1,5,2,8,0,4]

for i in range (len(A)-1):

j = i

while j > 1 and A[j] < A[j-1]:

A[j], A[j-1] = A[j-1], A[j]

j = j – 1

print (A)

Trả lời:

Chương trình không thông báo lỗi nhưng kết quả đưa ra không đúng.
Vị trí lỗi:
1) range(len(A)-1): Khoảng này không duyệt hết được các phần tử của A
2) while j>1: Do i chạy từ 0 nên j phải lớn hơn 0, nếu j>1 sẽ bỏ sót phần tử đầu tiên (A[0])
Chương trình viết lại như sau:

A=[10,1,5,2,8,0,4]
for i in range(len(A)):
    j=i
    while j>0 and A[j]<A[j-1]:
        A[j],A[j-1]=A[j-1],A[j]
        j=j-1
print(A)

Xem thêm các bài giải sách giáo khoa Tin học 10 bộ sách Kết nối tri thức với cuộc sống hay, chi tiết khác:

Khởi động trang 145 Tin học 10: Bài học trước em đã biết khái niệm lỗi ngoại lệ khi chạy chương trình Python...

Hoạt động trang 145 Tin học 10: Tìm hiểu một số phương pháp kiểm thử chương trình...

Luyện tập 1 trang 148 Tin học 10: Chương trình của em khi chạy phát sinh lỗi ngoại lệ ZeroDivisionError...

Luyện tập 2 trang 148 Tin học 10: Chương trình sau có lỗi không? Nếu có thì tìm và sửa lỗi...

Vận dụng 1 trang 148 Tin học 10: Chương trình sau có chức năng sắp xếp một dãy số cho trước...

Vận dụng 2 trang 148 Tin học 10: Để kiểm thử một chương trình, nếu chỉ bằng việc kiểm tra thông qua các bộ dữ liệu test...

Xem thêm lời giải bài tập Tin học lớp 10 Kết nối tri thức với cuộc sống hay, chi tiết khác: 

Bài 31: Thực hành viết chương trình đơn giản

Bài 32: Ôn tập lập trình Python

Bài 33: Nghề thiết kế đồ họa máy tính

Bài 34: Nghề phát triển phần mềm

Bài 1: Thông tin và xử lý thông tin

Lý thuyết Bài 30: Kiểm thử và gỡ lỗi chương trình

1 786 24/10/2022


Xem thêm các chương trình khác: