HOC24

Lớp học
Học bài Hỏi bài Giải bài tập Đề thi ĐGNL
Tin tức Cuộc thi vui Khen thưởng
  • Tìm kiếm câu trả lời Tìm kiếm câu trả lời cho câu hỏi của bạn
Đăng nhập Đăng ký

Lớp học

  • Lớp 12
  • Lớp 11
  • Lớp 10
  • Lớp 9
  • Lớp 8
  • Lớp 7
  • Lớp 6
  • Lớp 5
  • Lớp 4
  • Lớp 3
  • Lớp 2
  • Lớp 1

Môn học

  • Toán
  • Vật lý
  • Hóa học
  • Sinh học
  • Ngữ văn
  • Tiếng anh
  • Lịch sử
  • Địa lý
  • Tin học
  • Công nghệ
  • Giáo dục công dân
  • Tiếng anh thí điểm
  • Đạo đức
  • Tự nhiên và xã hội
  • Khoa học
  • Lịch sử và Địa lý
  • Tiếng việt
  • Khoa học tự nhiên
  • Hoạt động trải nghiệm
  • Hoạt động trải nghiệm, hướng nghiệp
  • Giáo dục kinh tế và pháp luật

Chủ đề / Chương

    Bài học

      HOC24

      Khách Khách vãng lai
      Đăng nhập Đăng ký
      Khám phá
      Hỏi đáp Đề thi Tin tức Cuộc thi vui Khen thưởng
      • Lớp 10
      • Tin học lớp 10 (Sách Chân trời sáng tạo)
      • Chủ đề F. Giải quyết vấn đề với sự trợ giúp của máy tính

      Chủ đề

      • Bài F1. Ngôn ngữ lập trình bậc cao và môi trường lập trình Python
      • Bài F2. Biến, hằng và biểu thức số học
      • Bài F3. Các lệnh vào/ra và chuyển đổi kiểu dữ liệu
      • Bài F4. Thực hành biến, hằng, biểu thức và các lệnh vào/ra đơn giản
      • Bài F5. Lệnh rẽ nhánh
      • Bài F6. Thực hành lệnh rẽ nhánh
      • Bài F7. Lệnh lặp
      • Bài F8. Thực hành lệnh lặp
      • Bài F9. Xâu kí tự
      • Bài F10. Thực hành xử lí xâu
      • Bài F11. Danh sách
      • Bài F12. Một số hàm trên danh sách
      • Bài F13. Hàm trong Python
      • Bài F14. Tham số của hàm và phạm vi của biến
      • Bài F15. Thực hành hàm của Python
      • Bài F16. Kiểm thử và gỡ lỗi chương trình
      • Bài F17. Thực hành tổng hợp

      Bài F15. Thực hành hàm của Python

      • Lý thuyết
      • Trắc nghiệm
      • Giải bài tập SGK
      • Hỏi đáp
      • Đóng góp lý thuyết

      Khởi động (SGK Chân trời sáng tạo - Trang 152)

      Hãy chỉ ra tham số, đối số của hàm tinh() trong chương trình dưới đây:

      Hướng dẫn giải

      1. Các trường hợp cần sử dụng kiểu dữ liệu danh sách:

      Kiểu dữ liệu danh sách (list) rất hữu ích khi bạn cần lưu trữ một tập hợp các phần tử có cùng hoặc khác kiểu dữ liệu. Dưới đây là một số trường hợp cụ thể:

      - Lưu trữ điểm số của học sinh: Như trong ví dụ của bạn, danh sách có thể được sử dụng để lưu trữ điểm số của tất cả học sinh trong một lớp.

      - Lưu trữ danh sách tên: Danh sách có thể được sử dụng để lưu trữ danh sách tên của các thành viên trong một nhóm, danh sách tên sản phẩm, v.v.

      - Lưu trữ kết quả khảo sát: Khi thực hiện một cuộc khảo sát, bạn có thể sử dụng danh sách để lưu trữ các câu trả lời của người tham gia.

      - Lưu trữ dữ liệu từ tệp tin: Khi đọc dữ liệu từ một tệp tin, bạn có thể sử dụng danh sách để lưu trữ các dòng hoặc các phần tử trong tệp tin.

      - Lưu trữ tọa độ: Bạn có thể sử dụng danh sách để lưu trữ tọa độ của các điểm trên mặt phẳng hoặc trong không gian.

      - Lưu trữ danh sách các sản phẩm trong giỏ hàng: trong lập trình ứng dụng bán hàng.

      - Lưu trữ danh sách các bài hát trong danh sách phát nhạc: trong ứng dụng nghe nhạc.

      2. Hướng dẫn An giải quyết vấn đề tìm 5 học sinh có điểm cao nhất:

      Để tìm 5 học sinh có điểm cao nhất, bạn An có thể sử dụng kết hợp kiểu dữ liệu danh sách và các phương thức sắp xếp của danh sách. Dưới đây là một cách thực hiện:

      def tim_5_diem_cao_nhat(danh_sach_diem, danh_sach_ten):

       """Tìm 5 học sinh có điểm cao nhất."""

       # Kết hợp tên và điểm thành một danh sách các tuple

       danh_sach_hoc_sinh = list(zip(danh_sach_diem, danh_sach_ten))

       # Sắp xếp danh sách theo điểm số giảm dần

       danh_sach_hoc_sinh.sort(reverse=True)

       # Lấy 5 học sinh đầu tiên

       top_5 = danh_sach_hoc_sinh[:5]

       return top_5

      # Dữ liệu ví dụ

      danh_sach_ten = ["An", "Bình", "Cúc", "Dũng", "Đào", "Giang", "Huệ", "Khánh"]

      danh_sach_diem = [8, 9, 7, 10, 6, 9.5, 8.5, 7.5]

      # Tìm 5 học sinh có điểm cao nhất

      top_5 = tim_5_diem_cao_nhat(danh_sach_diem, danh_sach_ten)

      # In kết quả

      print("5 học sinh có điểm cao nhất:")

      for diem, ten in top_5:

       print(f"{ten}: {diem}")

      *Giải thích:

      - tim_5_diem_cao_nhat(danh_sach_diem, danh_sach_ten): Hàm này nhận vào hai danh sách: danh_sach_diem (điểm số) và danh_sach_ten (tên học sinh).

      - danh_sach_hoc_sinh = list(zip(danh_sach_diem, danh_sach_ten)): Kết hợp hai danh sách thành một danh sách các tuple, mỗi tuple chứa một điểm số và tên học sinh tương ứng.

      - danh_sach_hoc_sinh.sort(reverse=True): Sắp xếp danh sách theo điểm số giảm dần.

      - top_5 = danh_sach_hoc_sinh[:5]: Lấy 5 tuple đầu tiên từ danh sách đã sắp xếp.

      *In kết quả: In tên và điểm số của 5 học sinh có điểm cao nhất.

      *Lưu ý:

      + Đảm bảo rằng hai danh sách danh_sach_diem và danh_sach_ten có cùng số lượng phần tử.

      + E, có thể điều chỉnh số lượng học sinh cần tìm bằng cách thay đổi giá trị 5 trong top_5 = danh_sach_hoc_sinh[:5].

      (Trả lời bởi Nguyễn Quốc Đạt)
      Thảo luận (1)
      Trước Sau
      • 1
      • Lý thuyết
      • Trắc nghiệm
      • Giải bài tập SGK
      • Hỏi đáp
      • Đóng góp lý thuyết
      Bài trước
      Bài tiếp theo

      Khoá học trên OLM (olm.vn)

      • Toán lớp 10 (Kết nối tri thức với cuộc sống)
      • Toán lớp 10 (Cánh Diều)
      • Toán lớp 10 (Chân trời sáng tạo)
      • Ngữ văn lớp 10 (Kết nối tri thức với cuộc sống)
      • Ngữ văn lớp 10 (Cánh Diều)
      • Ngữ văn lớp 10 (Chân trời sáng tạo)
      • Tiếng Anh lớp 10 (i-Learn Smart World)
      • Tiếng Anh lớp 10 (Global Success)
      • Vật lý lớp 10 (Kết nối tri thức với cuộc sống)
      • Vật lý lớp 10 (Cánh diều)
      • Hoá học lớp 10 (Kết nối tri thức với cuộc sống)
      • Hoá học lớp 10 (Cánh diều)
      • Sinh học lớp 10 (Kết nối tri thức với cuộc sống)
      • Sinh học lớp 10 (Cánh diều)
      • Lịch sử lớp 10 (Kết nối tri thức với cuộc sống)
      • Lịch sử lớp 10 (Cánh diều)
      • Địa lý lớp 10 (Kết nối tri thức với cuộc sống)
      • Địa lý lớp 10 (Cánh diều)
      • Giáo dục kinh tế và pháp luật lớp 10 (Kết nối tri thức với cuộc sống)
      • Giáo dục kinh tế và pháp luật lớp 10 (Cánh diều)
      • Lập trình Python cơ bản

      Khoá học trên OLM (olm.vn)

      • Toán lớp 10 (Kết nối tri thức với cuộc sống)
      • Toán lớp 10 (Cánh Diều)
      • Toán lớp 10 (Chân trời sáng tạo)
      • Ngữ văn lớp 10 (Kết nối tri thức với cuộc sống)
      • Ngữ văn lớp 10 (Cánh Diều)
      • Ngữ văn lớp 10 (Chân trời sáng tạo)
      • Tiếng Anh lớp 10 (i-Learn Smart World)
      • Tiếng Anh lớp 10 (Global Success)
      • Vật lý lớp 10 (Kết nối tri thức với cuộc sống)
      • Vật lý lớp 10 (Cánh diều)
      • Hoá học lớp 10 (Kết nối tri thức với cuộc sống)
      • Hoá học lớp 10 (Cánh diều)
      • Sinh học lớp 10 (Kết nối tri thức với cuộc sống)
      • Sinh học lớp 10 (Cánh diều)
      • Lịch sử lớp 10 (Kết nối tri thức với cuộc sống)
      • Lịch sử lớp 10 (Cánh diều)
      • Địa lý lớp 10 (Kết nối tri thức với cuộc sống)
      • Địa lý lớp 10 (Cánh diều)
      • Giáo dục kinh tế và pháp luật lớp 10 (Kết nối tri thức với cuộc sống)
      • Giáo dục kinh tế và pháp luật lớp 10 (Cánh diều)
      • Lập trình Python cơ bản