Bài 31. Thực hành thiết lập thư viên chương trình trang 143 SGK Tin học 11 Định hướng khoa học máy tính Kết nối tri thức — Không quảng cáo

Tin 11, giải tin học 11 kết nối tri thức Chủ đề 6. Kĩ thuật lập trình - SGK Tin định hướng khoa


Bài 31. Thực hành thiết lập thư viên chương trình trang 143 SGK Tin học 11 Định hướng khoa học máy tính Kết nối tri thức

T LẬP THƯ VIỆN CHƯƠNG TRÌNH Khởi động trang 143 Tin học 11: Trong bài 30, em đã tìm hiểu ý nghĩa và cách thiết lập thư viện chương trình. Em có thể thấy xung quanh em, đặc biệt là trong các lĩnh vực khoa học tự nhiên như Toán học, Vật lí và Hóa học, thường xuất hiện nhiều vấn đề hoặc nhiệm vụ tính toán mang tính tổng quát. Em hãy triển khai thuật toán cho các vấn đề như vậy thành các thư viện để có thể sử dụng lại nhiều lần cũng như làm toàn bộ chương trình có cấu trúc trong sáng, rõ ràng, dễ p

Khởi động

Trong bài 30, em đã tìm hiểu ý nghĩa và cách thiết lập thư viện chương trình. Em có thể thấy xung quanh em, đặc biệt là trong các lĩnh vực khoa học tự nhiên như Toán học, Vật lí và Hóa học, thường xuất hiện nhiều vấn đề hoặc nhiệm vụ tính toán mang tính tổng quát. Em hãy triển khai thuật toán cho các vấn đề như vậy thành các thư viện để có thể sử dụng lại nhiều lần cũng như làm toàn bộ chương trình có cấu trúc trong sáng, rõ ràng, dễ phát triển, dễ bảo trì hơn.

Phương pháp giải:

Dựa vào kiến thức trong bài 30 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:

Ví dụ tính chu vi và diện tích hình vuông:

def tinh_chu_vi_hinh_vuong(canh):

chu_vi = 4 * canh

return chu_vi

def tinh_dien_tich_hinh_vuong(canh):

dien_tich = canh ** 2

return dien_tich

from hinhvuong import tinh_chu_vi_hinh_vuong, tinh_dien_tich_hinh_vuong

canh =int(input())

chu_vi = tinh_chu_vi_hinh_vuong(canh)

dien_tich = tinh_dien_tich_hinh_vuong(canh)

print("Chu vi của hình vuông là:", chu_vi)

print("Diện tích của hình vuông là:", dien_tich)

Luyện tập 1

Đặt tất cả các tệp thư viện đã định nghĩa ở nhiệm vụ 1, 2 và 3 vào thư mục myLibs rồi viết mã nguồn ở tệp main.py (đặt cùng đường dẫn với thư mục myLibs) để sử dụng các hàm trong các thư viện đó.

Phương pháp giải:

Dựa vào hướng dẫn của Nhiệm vụ 1, 2, 3 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:

HS làm như hướng dẫn.

Luyện tập 2

Sửa lại thư viện hình_ tròn ở nhiệm vụ 1 bằng cách không sử dụng thư viện chuẩn math mà hãy định nghĩa thư viện my_math trong đó có định nghĩa hằng số Pi.

Phương pháp giải:

Dựa vào hướng dẫn của Nhiệm vụ 1 trang 143 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:

# Định nghĩa thư viện my_math

class my_math:

# Định nghĩa hằng số Pi

Pi = 3.14159

# Hàm tính chu vi hình tròn

def tinhchuvi(r):

return 2 * my_math.Pi * r

# Hàm tính diện tích hình tròn

def tinhdientich(r):

return my_math.Pi * r * r

# Sử dụng thư viện my_math đã định nghĩa

r = float(input("Nhập bán kính hình tròn: "))

p = my_math.tinhchuvi(r)

print("Chu vi hình tròn là", p)

s = my_math.tinhdientich(r)

print(f"Diện tích hình tròn là", s)

Vận dụng 1

Tạo thư viện phương_ trình gồm hàm phuongTrinhBac2(a, b, c) với a, b, c là các hệ số của phương trình ax 2 + bx + c = 0. Tuỳ vào các giá trị của các tham số, hàm sẽ in ra thông báo nghiệm của phương trình.

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:

import math

def giai_phuong_trinh_bac_2(a, b, c):

delta = b**2 - 4*a*c

if delta < 0:

return None

elif delta == 0:

nghiem = -b / (2*a)

return (nghiem)

else:

sqrt_delta = math.sqrt(delta)

nghiem1 = (-b + sqrt_delta) / (2*a)

nghiem2 = (-b - sqrt_delta) / (2*a)

return (nghiem1, nghiem2)

Vận dụng 2

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

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

Phương pháp giải:

Vận dụng kiến thức trong bài, hướng dẫn của các Nhiệm vụ  để trả lời câu hỏi.

Lời giải chi tiết:

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)


Cùng chủ đề:

Bài 29. Khám phá phần mềm làm phim trang 137 SGK Tin học 11 Định hướng tin học ứng dụng Kết nối tri thức
Bài 29. Thực hành thiết kế chương trình theo mô đun trang 132 SGK Tin học 11 Định hướng khoa học máy tính Kết nối tri thức
Bài 30. Biên tập phim trang 143 SGK Tin học 11 Định hướng tin học ứng dụng Kết nối tri thức
Bài 30. Thiết lập thư viện cho chương trình trang 137 SGK Tin học 11 Định hướng khoa học máy tính Kết nối tri thức
Bài 31. Thực hành tạo phim hoạt hình trang 148 SGK Tin học 11 Định hướng tin học ứng dụng Kết nối tri thức
Bài 31. Thực hành thiết lập thư viên chương trình trang 143 SGK Tin học 11 Định hướng khoa học máy tính Kết nối tri thức
Giải chủ đề 1 tin 11 kết nối tri thức với cuộc sống
Giải chủ đề 2 tin 11 kết nối tri thức với cuộc sống
Giải chủ đề 3 tin 11 kết nối tri thức với cuộc sống
Giải chủ đề 4 tin 11 kết nối tri thức với cuộc sống
Giải chủ đề 5 tin 11 kết nối tri thức với cuộc sống