YOMEDIA
NONE

Vận dụng 2 trang 145 SGK Tin học 11 Kết nối tri thức - KNTT

Vận dụng 2 trang 145 SGK Tin học 11 Kết nối tri thức

Viết chương trình quản lí các bài hát trong một đĩa CD hay mớt play list, sử dụng cấu trúc LinkedList (đã được định nghĩa ở bài trước). Chương trình gồm hai tệp:

 - Tệp quan _ly_cd.py gồm ba hàm:

  + Hàm nhapDL(): Yêu cầu người dùng nhập số lượng bài hát, rồi sau đó nhập lần lượt tên các bài hát và bổ sung vào đĩa CD (hay play list), trả lại biến kiểuLinkedList chứa các bài hát.

  + Hàm timBai(): Tham số gồm đối tượng LinkedList và tên bài hát <ten_bai>. Nếu có bài hát cần tìm, hàm in ra vị trí đầu tiền xuất hiện bài hát, nếu không in ra thông báo “Không tìm thấy bài hát <ten_bai>”.

  + Hàm inTT() tham số là đối tượng LinkedList. thực hiện in mỗi bài hát trên một dòng theo định dạng <Số thứ tự>. <Tên bài hát>.

- Tệp main.py sử dụng thư viện quan_ly_cd.

ATNETWORK

Hướng dẫn giải chi tiết Vận dụng 2

from LinkedList import LinkedList

def nhapDL():

  ds_bai_hat = LinkedList()

  n = int(input("Nhập số lượng bài hát: "))

for i in range(n):

  ten_bai = input(f"Nhập tên bài hát thứ {i+1}: ")

  ds_bai_hat.append(ten_bai)

return ds_bai_hat

def timBai(ds_bai_hat, ten_bai):

 result = ds_bai_hat.find(ten_bai)

if result is not None:

  print(f"Bài hát '{ten_bai}' được tìm thấy ở vị trí đầu tiên: {ds_bai_hat.__str__().index(ten_bai) // 4 + 1}")

else:

  print(f"Không tìm thấy bài hát '{ten_bai}'")

def inTT(ds_bai_hat):

print("Danh sách bài hát trên đĩa CD hay playlist:")

print(ds_bai_hat)

from quan_ly_cd import nhapDL, timBai, inTT

def main():

 ds_bai_hat = nhapDL()

while True:

  print("====================================")

  print("1. Tìm bài hát")

  print("2. In danh sách bài hát")

  print("3. Thoát")

  choice = int(input("Nhập lựa chọn của bạn: "))

  if choice == 1:

   ten_bai = input("Nhập tên bài hát cần tìm: ")

   timBai(ds_bai_hat, ten_bai)

-- Mod Tin Học 11 HỌC247

Nếu bạn thấy hướng dẫn giải Vận dụng 2 trang 145 SGK Tin học 11 Kết nối tri thức - KNTT HAY thì click chia sẻ 
YOMEDIA

Chưa có câu hỏi nào. Em hãy trở thành người đầu tiên đặt câu hỏi.

AANETWORK
 

 

YOMEDIA
ATNETWORK
ON