[SGK Tin học Lớp 11 Kết nối tri thức] Bài 22. Thực hành bài toán sắp xếp trang 104 SGK Tin học 11 Định hướng khoa học máy tính Kết nối tri thức

Hướng dẫn học bài: Bài 22. Thực hành bài toán sắp xếp trang 104 SGK Tin học 11 Định hướng khoa học máy tính Kết nối tri thức - Môn Tin học Lớp 11 Lớp 11. Đây là sách giáo khoa nằm trong bộ sách 'SGK Tin học Lớp 11 Kết nối tri thức Lớp 11' được biên soạn theo chương trình đổi mới của Bộ giáo dục. Hi vọng, với cách hướng dẫn cụ thể và giải chi tiết các bé sẽ nắm bài học tốt hơn.

Khởi động

Trong bài 21, em đã được học cách triển khai thuật toán sắp xếp để sắp xếp các phần tử trong danh sách theo thứ tự tăng dần. Nếu cần sắp xếp theo thứ tự ngược lại thì câu lệnh so sánh tương ứng trong vòng lặp sẽ cần thay đổi như thế nào?


Phương pháp giải:

Dựa vào kiến thức trong bài 21 kết hợp kiến thức thực tế của bản thân để trả lời câu hỏi.


Lời giải chi tiết:

Nếu muốn sắp xếp danh sách theo thứ tự giảm dần thay vì thứ tự tăng dần, ta cần thay đổi câu lệnh so sánh trong vòng lặp của thuật toán sắp xếp. Cụ thể,cần đảo ngược dấu so sánh.


Luyện tập 1

ử 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.


Phương pháp giải:

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 để trả lời câu hỏi.


Lời giải chi tiết:

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)


Luyện tập 2

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


Phương pháp giải:

 Dựa vào hướng dẫn của Nhiệm vụ 2 trang 105  SGK kết hợp kiến thức thực tế của bản thân để trả lời câu hỏi.


Lời giải chi tiết:

def bubble_sort(arr):

 n = len(arr)

 for i in range(n - 1):

  for j in range(0, n - i - 1):

   if arr[j] < arr[j + 1]:

    arr[j], arr[j + 1] = arr[j + 1], arr[j]

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

with open('diem.inp', 'r') as file:

 lines = file.readlines()

 scores = [float(line.strip()) for line in lines]

# Sắp xếp danh sách điểm trung bình giảm dần

bubble_sort(scores)

# In danh sách điểm trung bình đã được sắp xếp ra màn hình

print("Danh sách điểm trung bình giảm dần:")

for score in scores:

 print(score)


Vận dụng

Một người đi mua hàng với danh sách các mặt hàng cần mua, đơn giá từng mặt hàng và số lượng hàng cần mua được lưu trong tệp văn bản muahang.inp. Hãy sử dụng thuật toán nổi bọt để sắp xếp các mặt hàng theo thứ tự thành tiền của các mặt hàng tăng dần rồi in ra tên các mặt hàng và thành tiền tương ứng.


Phương pháp giải:

Vận dụng kiến thức trong bài để trả lời câu hỏi.


Lời giải chi tiết:

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

with open('muahang.inp', 'r') as file:

 lines = file.readlines()

 mat_hangs = []

 for line in lines:

  data = line.strip().split(',')

  ten = data[0]

  don_gia = float(data[1])

  so_luong = int(data[2])

  thanh_tien = don_gia * so_luong

  mat_hangs.append((ten, thanh_tien))

# Sắp xếp danh sách các mặt hàng theo thứ tự thành tiền tăng dần

n = len(mat_hangs)

for i in range(n - 1):

 for j in range(0, n - i - 1):

  if mat_hangs[j][1] > mat_hangs[j + 1][1]:

   mat_hangs[j], mat_hangs[j + 1] = mat_hangs[j + 1], mat_hangs[j]

# In danh sách các mặt hàng và thành tiền tương ứng ra màn hình

print("Danh sách các mặt hàng và thành tiền tương ứng:")

for mat_hang in mat_hangs:

 print("Tên mặt hàng: ", mat_hang[0])

 print("Thành tiền: ", mat_hang[1])

 print("-----")


Giải bài tập những môn khác

Môn Ngữ văn Lớp 11

  • Bài tập trắc nghiệm Văn Lớp 11 Cánh diều
  • Bài tập trắc nghiệm Văn Lớp 11 Cánh diều
  • Bài tập trắc nghiệm Văn Lớp 11 Chân trời sáng tạo
  • Bài tập trắc nghiệm Văn Lớp 11 Kết nối tri thức
  • Bài tập trắc nghiệm Văn Lớp 11 Chân trời sáng tạo
  • Bài tập trắc nghiệm Văn Lớp 11 Kết nối tri thức
  • Chuyên đề học tập Văn Lớp 11 Cánh diều
  • Chuyên đề học tập Văn Lớp 11 Chân trời sáng tạo
  • Chuyên đề học tập Văn Lớp 11 Kết nối tri thức
  • Đề thi, đề kiểm tra Văn Lớp 11 Kết nối tri thức
  • Đề thi, đề kiểm tra Văn Lớp 11 Chân trời sáng tạo
  • Đề thi, đề kiểm tra Văn Lớp 11 Cánh diều
  • Lý thuyết ngữ văn lớp 11
  • SBT Văn Lớp 11 Cánh diều
  • SBT Văn Lớp 11 Kết nối tri thức
  • SBT Văn Lớp 11 Chân trời sáng tạo
  • Soạn văn Lớp 11 Cánh Diều - chi tiết
  • Soạn văn Lớp 11 Cánh Diều - siêu ngắn
  • Soạn văn Lớp 11 Chân trời sáng tạo - chi tiết
  • Soạn văn Lớp 11 Kết nối tri thức siêu ngắn
  • Soạn văn Lớp 11 Cánh diều
  • Soạn văn Lớp 11 Cánh diều siêu ngắn
  • Soạn văn Lớp 11 Chân trời sáng tạo - siêu ngắn
  • Soạn văn Lớp 11 Chân trời sáng tạo siêu ngắn
  • Soạn văn Lớp 11 Kết nối tri thức - chi tiết
  • Soạn văn Lớp 11 Kết nối tri thức - siêu ngắn
  • Soạn văn Lớp 11 Chân trời sáng tạo
  • Soạn văn Lớp 11 Kết nối tri thức
  • Tác giả tác phẩm lớp 11
  • Tóm tắt, bố cục Văn Lớp 11 Kết nối tri thức
  • Tóm tắt, bố cục Văn Lớp 11 Chân trời sáng tạo
  • Tóm tắt, bố cục Văn Lớp 11 Cánh diều
  • Văn mẫu Lớp 11 Cánh diều
  • Văn mẫu Lớp 11 Kết nối tri thức
  • Văn mẫu Lớp 11 Chân trời sáng tạo
  • Môn Vật lí Lớp 11

    Môn Tiếng Anh Lớp 11

  • Bài tập trắc nghiệm Tiếng Anh Lớp 11 iLearn Smart World
  • Bài tập trắc nghiệm Tiếng Anh Lớp 11 iLearn Smart World
  • Bài tập trắc nghiệm Tiếng Anh Lớp 11 Friends Global
  • Bài tập trắc nghiệm Tiếng Anh Lớp 11 Global Success
  • Bài tập trắc nghiệm Tiếng Anh Lớp 11 Friends Global
  • Bài tập trắc nghiệm Tiếng Anh Lớp 11 Global Success
  • Đề thi, đề kiểm tra Tiếng Anh Lớp 11 iLearn Smart World
  • Đề thi, đề kiểm tra Tiếng Anh Lớp 11 friends Global
  • Đề thi, đề kiểm tra Tiếng Anh Lớp 11 Global Success
  • Đề thi, đề kiểm tra Tiếng Anh Lớp 11 Bright
  • Đề thi, đề kiểm tra Tiếng Anh Lớp 11 English Discovery
  • Lý Thuyết Tiếng Anh Lớp 11
  • SBT Tiếng Anh Lớp 11 Friends Global - Chân trời sáng tạo
  • SBT Tiếng anh Lớp 11 Bright
  • SBT Tiếng anh Lớp 11 Friends Global
  • SBT Tiếng Anh Lớp 11 iLearn Smart World
  • SBT Tiếng anh Lớp 11 iLearn Smart World
  • SBT Tiếng Anh Lớp 11 Bright
  • SBT Tiếng anh Lớp 11 English Discovery
  • SBT Tiếng Anh Lớp 11 English Discovery - Cánh buồm
  • SBT Tiếng anh Lớp 11 Global Success
  • SBT Tiếng Anh 11 Lớp 11 Global Success - Kết nối tri thức
  • SGK Tiếng Anh Lớp 11 Global Success
  • SGK Tiếng Anh 11 Lớp 11 Friends Global
  • SGK Tiếng Anh 11 Lớp 11 Bright
  • SGK Tiếng Anh 11 Lớp 11 English Discovery
  • SGK Tiếng Anh 11 Lớp 11 iLearn Smart World
  • Tiếng Anh Lớp 11 Global Success
  • Tiếng Anh Lớp 11 iLearn Smart Wolrd
  • Tiếng Anh Lớp 11 Friends Global
  • Tiếng Anh Lớp 11 English Discovery
  • Tiếng Anh Lớp 11 Bright
  • Môn Hóa học Lớp 11

    Môn Sinh học Lớp 11

    Tài liệu tin học

    Tài liệu Lớp 1

    Tài liệu Lớp 2

    Tài liệu Lớp 3

    Tài liệu Lớp 4

    Tài liệu Lớp 5

    Trò chơi Powerpoint

    Sáng kiến kinh nghiệm