Trang chủ Lớp 11 Tin học lớp 11 SGK Tin học 11 - Kết nối tri thức Luyện tập 1 Bài 22 (trang 104) Tin học 11: ử dụng...

Luyện tập 1 Bài 22 (trang 104) Tin học 11: ử dụng thuật toán sắp xếp chọn viết lại chương trình trong Nhiệm vụ 1

Hướng dẫn giải Luyện tập 1 Bài 22. Thực hành bài toán sắp xếp (trang 104) – SGK Tin học 11 Kết nối tri thức. Hướng dẫn: Dựa vào hướng dẫn của Nhiệm vụ 1 trang 104 SGK kết hợp kiến thức thực tế của bản thân.

Câu hỏi/Đề bài:

ử dụng thuật toán sắp xếp chọn viết lại chương trình trong Nhiệm vụ 1.

Lời giải:

def selection_sort(arr):

 for i in range(len(arr) – 1):

  min_idx = i

  for j in range(i + 1, len(arr)):

   if arr[j] < arr[min_idx]:

    min_idx = j

  arr[i], arr[min_idx] = arr[min_idx], arr[i]

# Đọc dữ liệu từ file kho.inp

with open(‘kho.inp’, ‘r’) as file:

 lines = file.readlines()

 quantities = [int(line.strip()) for line in lines]

# Sắp xếp danh sách số lượng các mặt hàng theo thứ tự tăng dần

selection_sort(quantities)

# In danh sách số lượng các mặt hàng đã được sắp xếp ra màn hình

print(“Danh sách số lượng các mặt hàng sau khi sắp xếp:”)

for quantity in quantities:

 print(quantity)