Dễ hiểu giải Khoa học máy tính 11 Kết nối bài 31 Thực hành thiết lập thư viện cho chương trình
Giải dễ hiểu bài 31 Thực hành thiết lập thư viện cho chương trình. Trình bày rất dễ hiểu, nên tiếp thu Khoa học máy tính 11 kết nối dễ dàng. Học sinh nắm được kiến thức và biết suy rộng ra các bài tương tự. Thêm 1 dạng giải mới để mở rộng tư duy. Danh mục các bài giải trình bày phía dưới
Nếu chưa hiểu - hãy xem: => Lời giải chi tiết ở đây
BÀI 31 - THỰC HÀNH THIẾT LẬP THƯ VIỆN CHƯƠNG TRÌNH
MỞ ĐẦU
Câu 1: 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.
Giải nhanh:
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
Câu 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 đó.
Giải nhanh:
Gợi ý: Đặ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
Câu 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.
Giải nhanh:
# Đị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
Câu 1: Tạo thư viện phương_ trình gồm hàm phương trình bậc 2 (a, b, c) với a, b, c là các hệ số của phương trình ax2 + 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.
Giải nhanh:
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)
Câu 2: Viết chương trình quản li 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ểu LinkedList 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.
Giải nhanh:
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)
Nếu chưa hiểu - hãy xem: => Lời giải chi tiết ở đây
Nội dung quan tâm khác
Thêm kiến thức môn học
Giải bài tập những môn khác
Giải sgk lớp 11 KNTT
Giải sgk lớp 11 CTST
Giải sgk lớp 11 cánh diều
Giải SBT lớp 11 kết nối tri thức
Giải SBT lớp 11 chân trời sáng tạo
Giải SBT lớp 11 cánh diều
Giải chuyên đề học tập lớp 11 kết nối tri thức
Giải chuyên đề toán 11 kết nối tri thức
Giải chuyên đề ngữ văn 11 kết nối tri thức
Giải chuyên đề vật lí 11 kết nối tri thức
Giải chuyên đề hóa học 11 kết nối tri thức
Giải chuyên đề sinh học 11 kết nối tri thức
Giải chuyên đề kinh tế pháp luật 11 kết nối tri thức
Giải chuyên đề lịch sử 11 kết nối tri thức
Giải chuyên đề địa lí 11 kết nối tri thức
Giải chuyên đề mĩ thuật 11 kết nối tri thức
Giải chuyên đề âm nhạc 11 kết nối tri thức
Giải chuyên đề công nghệ chăn nuôi 11 kết nối tri thức
Giải chuyên đề công nghệ cơ khí 11 kết nối tri thức
Giải chuyên đề tin học 11 định hướng Khoa học máy tính kết nối tri thức
Giải chuyên đề tin học 11 định hướng Tin học ứng dụng kết nối tri thức
Giải chuyên đề quốc phòng an ninh 11 kết nối tri thức
Giải chuyên đề hoạt động trải nghiệm hướng nghiệp 11 kết nối tri thức
Giải chuyên đề học tập lớp 11 chân trời sáng tạo
Giải chuyên đề học tập lớp 11 cánh diều
Trắc nghiệm 11 Kết nối tri thức
Trắc nghiệm 11 Chân trời sáng tạo
Trắc nghiệm 11 Cánh diều
Bộ đề thi, đề kiểm tra lớp 11 kết nối tri thức
Đề thi Toán 11 Kết nối tri thức
Đề thi ngữ văn 11 Kết nối tri thức
Đề thi vật lí 11 Kết nối tri thức
Đề thi sinh học 11 Kết nối tri thức
Đề thi hóa học 11 Kết nối tri thức
Đề thi lịch sử 11 Kết nối tri thức
Đề thi địa lí 11 Kết nối tri thức
Đề thi kinh tế pháp luật 11 Kết nối tri thức
Đề thi công nghệ cơ khí 11 Kết nối tri thức
Đề thi công nghệ chăn nuôi 11 Kết nối tri thức
Đề thi tin học ứng dụng 11 Kết nối tri thức
Đề thi khoa học máy tính 11 Kết nối tri thức
Bộ đề thi, đề kiểm tra lớp 11 chân trời sáng tạo
Bộ đề thi, đề kiểm tra lớp 11 cánh diều
Đề thi Toán 11 Cánh diều
Đề thi ngữ văn 11 Cánh diều
Đề thi vật lí 11 Cánh diều
Đề thi sinh học 11 Cánh diều
Đề thi hóa học 11 Cánh diều
Đề thi lịch sử 11 Cánh diều
Đề thi địa lí 11 Cánh diều
Đề thi kinh tế pháp luật 11 Cánh diều
Đề thi công nghệ cơ khí 11 Cánh diều
Đề thi công nghệ chăn nuôi 11 Cánh diều
Đề thi tin học ứng dụng 11 Cánh diều
Đề thi khoa học máy tính 11 Cánh diều
Bình luận