Chuyên đề Tin 12 CTST Bài 1.3. Ứng dụng của hàng đợi
24 người thi tuần này 4.6 276 lượt thi 7 câu hỏi
Bạn cần đăng ký gói VIP ( giá chỉ từ 250K ) để làm bài, xem đáp án và lời giải chi tiết không giới hạn.
🔥 Học sinh cũng đã học
Đề thi giữa kì 2 Tin học 12 Kết nối tri thức có đáp án - Đề 3
Đề thi giữa kì 2 Tin học 12 Kết nối tri thức có đáp án - Đề 2
Đề thi giữa kì 2 Tin học 12 Kết nối tri thức có đáp án - Đề 1
Bộ 3 đề thi cuối kì 2 Tin học 12 Chân trời sáng tạo có đáp án - Đề 3
Bộ 3 đề thi cuối kì 2 Tin học 12 Chân trời sáng tạo có đáp án - Đề 2
Bộ 3 đề thi cuối kì 2 Tin học 12 Chân trời sáng tạo có đáp án - Đề 1
Bộ 3 đề thi cuối kì 2 Tin học 12 Kết nối tri thức có đáp án - Đề 3
Bộ 3 đề thi cuối kì 2 Tin học 12 Kết nối tri thức có đáp án - Đề 2
Danh sách câu hỏi:
Lời giải
Liệt kê một số hoạt động hàng ngày cần dùng đến hàng đợi: phân bố tài nguyên của hệ điều hành, thứ tự gửi email, in tài liệu, xếp hàng mua vé, lấy số khám bệnh ở bệnh viện, xếp hàng thanh toán ở siêu thị,…
Lời giải
Hàng đợi có những ứng dụng sau: phân bố tài nguyên của hệ điều hành, thứ tự gửi email, in tài liệu, xếp hàng mua vé, lấy số khám bệnh ở bệnh viện, xếp hàng thanh toán ở siêu thị,…
Lời giải
Hàng đợi máy in được sử dụng như sau: Được sử dụng để quản lí thứ tự khi xử lý lệnh in. Khi nhiều tài liệu cần được in, thì các tài liệu được thêm vào vùng đệm máy in. Các tài liệu cần được in thêm vào hàng đợi của máy in với thao tác enqueue, sau đó máy in sẽ tuần tự lấy tài liệu cần in với thao tác là dequeue để thực hiện in.

Lời giải
Máy chủ email thường xử lí các yêu cầu từ nhiều người dùng theo thứ tự như sau: Sử dụng hàng đợi để quản lí các yêu cầu đến từ máy khách, nhằm đảm bảo xử lý các yêu cầu theo thứ tự thích hợp (yêu cầu nào đến trước thì phục vụ trước). Các yêu cầu được enqueue vào hàng đợi và được dequeue để xử lý theo cơ chế FIFO.

Lời giải
Trình bày ứng dụng của hàng đợi trong thuật toán First-Come, First-Served thường được dùng trong sắp xếp các tiến trình chờ xử lí của CPU:
Sử dụng hàng đợi để quản lí các nhiệm vụ cần thực hiện. Một trong những cách tiếp cận đơn giản được gọi là “đến trước, phục vụ trước” (First-Come, First-Served). Nghĩa là các nhiệm vụ được thêm vào cuối hàng đợi với thao tác enqueue theo thứ tự yêu cầu. Sau đó, các nhiệm vụ lấy ra khỏi hàng đợi với thao tác dequeue để thực hiện.

Lời giải
Hãy viết chương trình in ra màn mình tên người chiến thắng với danh sách n (n ≥ 1) người chơi và số nguyên dương m (m > 0) được nhập từ bàn phím. Chạy chương trình với số người chơi n = 5.
Dữ liệu vào: danh sách tên các người chơi và số nguyên dương m (m > 0).
Dữ liệu ra: tên của người chiến thắng.
* Mã giả trò chơi Hot Potato:
hotPotato (players, m):
Nếu m <= 9 :
raise ValueError('Số lần chuyển phải lớn hơn zero') if len(players) == 0:
raise ValueError('Không có người chơi') Tạo queue rỗng
son trở thêm danh sách các người chơi vào queue
for p in players: Thêm p vào queue player = "
while queue khác rỗng:
for i in range(m)
Lấy ra player từ queue Thêm player vào queue Lấy ra player từ queue return player
#Tên người thắng #Còn người chơi
#Chuyển củ khoai m lần
#Loại người cầm củ khoai
* Code như sau:
def hotPotato (players, m):
if m <= 0 :
raise ValueError('Số lần chuyển phải lớn hơn zero')
if len(players) == 0:
raise ValueError("Không có người chơi')
queue initQueue()
for p in players:enqueue(queue, p)
player = "
#Tạo hàng đợi rỗng
#Thêm danh sách các người chơi vào queue
while not isEmptyQueue(queue):#Còn người chơi
for i in range(m): player dequeue(queue) enqueue(queue, player) player = dequeue(queue) return player
#Chuyển củ khoai m lần
#Loại người cầm củ khoai #Trả về tên người thắng
players = list(map(str, input('Nhập danh sách người chơi:').split()))
m = int(input('Nhập số lần chuyển: '))
if len(players) == 0:
print("Không có người chơi")
elif m <= 0:
print("Số lần chuyển > 9")
else:
winner hotPotato (players, m)
print("Danh sách người chơi:", players) print("Số lần chuyển:", m)
print("Người chiến thắng:", winner)
Lời giải
Bạn cần đăng ký gói VIP ( giá chỉ từ 250K ) để làm bài, xem đáp án và lời giải chi tiết không giới hạn.
Xem tiếp với tài khoản VIP
Còn 1/7 câu hỏi, đáp án và lời giải chi tiết.
Bạn cần đăng ký gói VIP ( giá chỉ từ 250K ) để làm bài, xem đáp án và lời giải chi tiết không giới hạn.
