Bỏ qua để đến nội dung

Dạng 4: Giờ, ngày và thứ trong tuần

Trang này thuộc chuyên đề Các dạng toán thường gặp trong đề thi Tin học trẻ Bảng A.

Đề nói về giờ, phút, giây, đồng hồ, ngày tháng năm, thứ trong tuần, năm nhuận, hoặc đổi đơn vị đo (cm và mm, kg và g…). Câu hỏi thường là: đổi ra giờ phút giây, mấy giờ thì đến nơi, sau N ngày là thứ mấy, có bao nhiêu ngày.

Đổi hết về đơn vị nhỏ nhất rồi mới tính. 1 giờ = 60 phút = 3600 giây; 1 ngày = 24 giờ = 1440 phút; 1 tuần = 7 ngày. Ví dụ 21 giờ 40 phút là 21 × 60 + 40 = 1300 phút tính từ 0 giờ.

Đổi ngược từ đơn vị nhỏ ra đơn vị lớn bằng làm tròn xuống và chia lấy dư. Với S giây:

Cần tìmCách tínhS = 3725
Số giờlàm tròn xuống của (S ÷ 3600)1
Số phútlàm tròn xuống của ((S chia lấy dư 3600) ÷ 60)2
Số giâyS chia lấy dư 605

Qua nửa đêm. Cộng giờ như bình thường. Nếu được từ 24 giờ trở lên thì đồng hồ đã qua nửa đêm, sang ngày hôm sau: bớt đi 24 giờ. Ví dụ 21 giờ 40 phút thêm 3 giờ là 24 giờ 40 phút, bớt 24 giờ còn 0 giờ 40 phút ngày hôm sau.

Trong Scratch, như đã nói ở trên, ta đổi hết về đơn vị nhỏ nhất có trong đề để chỉ phải cộng hai số. Ví dụ này có giờ và phút nên đổi ra phút; 24 giờ là 24 × 60 = 1440 phút, nên “bớt đi 24 giờ” chính là lấy số phút chia lấy dư 1440. Đề có cả giây thì đổi ra giây, khi đó chia lấy dư 24 × 3600 = 86400. Với ví dụ trên, 1300 + 180 = 1480 phút, chia lấy dư 1440 còn 40 phút, tức 0 giờ 40 phút.

Thứ trong tuần. Đánh số thứ Hai là 2, thứ Ba là 3, …, thứ Bảy là 7, Chủ nhật là 8. Cứ 7 ngày thì thứ lặp lại, nên sau N ngày chỉ cần quan tâm đến N chia lấy dư 7.

Năm nhuận là năm chia hết cho 400, hoặc chia hết cho 4 nhưng không chia hết cho 100. Ví dụ 2024 và 2000 là năm nhuận, 1900 và 2026 không phải. Năm nhuận có 366 ngày, tháng 2 có 29 ngày.

nếu <<((năm) chia lấy dư (400)) = (0)> hoặc <<((năm) chia lấy dư (4)) = (0)> và <không phải <((năm) chia lấy dư (100)) = (0)>>>> thì
nói [Năm nhuận]
end

Số ngày trong tháng lần lượt là 31, 28 (năm nhuận 29), 31, 30, 31, 30, 31, 31, 30, 31, 30, 31. Trong Scratch nên cất 12 số này vào một danh sách (số ngày :: list) rồi lấy (phần tử thứ (tháng) của [số ngày v]).

Đề thi thật: Bảng A 2022 - Tỉnh Đồng Nai, Câu 2.

Mèo hỏi số giây, người chơi nhập vào, mèo nói ra thời gian đã đổi theo giờ phút giây. Ví dụ: nhập 4000 thì mèo nói “1 giờ 6 phút 40 giây”; nhập 7500 thì mèo nói “2 giờ 5 phút 0 giây”.

Dùng đúng bảng đổi ngược ở trên. Để tính số phút, phải bỏ đi số giờ trọn vẹn (đã tính bằng cách chia cho 3600) trước, tức là lấy S chia lấy dư 3600, rồi mới chia cho 60. Đề này không chấm bằng máy và yêu cầu nói kèm chữ “giờ, phút, giây”, nên ta ghép số và chữ bằng khối (kết hợp [] []).

khi bấm vào @greenFlag
hỏi [Nhập số giây:] và đợi
đặt [tổng số giây v] thành (trả lời)
đặt [giờ v] thành ([làm tròn xuống v] của ((tổng số giây) / (3600)))
đặt [phút v] thành ([làm tròn xuống v] của (((tổng số giây) chia lấy dư (3600)) / (60)))
đặt [giây v] thành ((tổng số giây) chia lấy dư (60))
nói (kết hợp (giờ) (kết hợp [ giờ ] (kết hợp (phút) (kết hợp [ phút ] (kết hợp (giây) [ giây])))))

Chạy tay:

NhậpgiờPhần còn lạiphútgiâyMèo nói
400014000 − 3600 = 400400 ÷ 60 được 6, dư 404000 chia lấy dư 60 = 401 giờ 6 phút 40 giây
750027500 − 7200 = 300300 ÷ 60 = 502 giờ 5 phút 0 giây

Đề thi thật: Bảng A 2024 - Tỉnh Thanh Hóa, Câu 2.

Hội thi tổ chức vào thứ Bảy. Hỏi sau N ngày nữa (0 < N ≤ 106) là thứ mấy? Nói 2, 3, …, 7 nếu là thứ Hai đến thứ Bảy, nói CN nếu là Chủ nhật. Ví dụ: N = 3 thì nói 3; N = 14 thì nói 7.

Cứ 7 ngày thì thứ lặp lại, nên ta dùng phép chia lấy dư 7. Nhưng chia lấy dư 7 chỉ cho kết quả từ 0 đến 6, còn đề đánh số thứ từ 2 đến 8. Vì vậy ta đánh số lại các thứ từ 0, bằng cách trừ 2:

ThứHaiBaTưNămSáuBảyCN
Số theo đề2345678
Số mới (trừ 2)0123456

Với số mới, đi thêm 1 ngày là cộng 1, qua Chủ nhật (6) thì quay về thứ Hai (0), đúng như phép chia lấy dư 7. Cách tính gồm 3 bước:

  • Bước 1. Thứ Bảy có số mới là 7 − 2 = 5.
  • Bước 2. Sau N ngày, số mới là (5 + N) chia lấy dư 7.
  • Bước 3. Cộng lại 2 để về số theo đề.
khi bấm vào @greenFlag
hỏi [] và đợi
đặt [số ngày v] thành (trả lời)
đặt [thứ v] thành ((((5) + (số ngày)) chia lấy dư (7)) + (2))
nếu <(thứ) = (8)> thì
nói [CN]
nếu không thì
nói (thứ)
end

Chạy tay:

N(5 + N) chia lấy dư 7Cộng 2Nói ra
38 chia lấy dư 7 = 133 (thứ Ba)
1419 chia lấy dư 7 = 577 (2 tuần sau lại là thứ Bảy)
16 chia lấy dư 7 = 68CN

Độ khó: 🌶️ dễ, 🌶️🌶️ trung bình, 🌶️🌶️🌶️ khó. Dòng “Đề thi thật” cho biết bài lấy từ đề nào (bấm vào để xem nguyên đề). Các đề bài được viết gọn lại, tuy nhiên vẫn giữ nguyên yêu cầu và ví dụ của đề gốc.

Bài 4.1: Kim phút đi được bao lâu 🌶️🌶️

Phần tiêu đề “Bài 4.1: Kim phút đi được bao lâu 🌶️🌶️”

Đề thi thật: Bảng A 2025 - Vòng khu vực miền Nam, Bài 1.

Ban đầu kim phút chỉ phút thứ a. Sau một thời gian, kim phút đã đi qua số 12 đúng n lần và hiện đang chỉ đúng vào số k trên mặt đồng hồ. Tính số phút đã trôi qua. Nhập a, n, k trên 3 dòng (1 ≤ a ≤ 59; 1 ≤ n ≤ 109; 1 ≤ k ≤ 11).

NhậpNói raGiải thích
1
1
3
74Cần 59 phút để đến số 12, thêm 3 × 5 = 15 phút để đến số 3.
Xem lời giải

Vui lòng liên hệ tác giả (thông tin ở cuối trang) để mua bộ bài giải và code. Xin cảm ơn.

Bài 4.2: Ngày này năm 2024 là thứ mấy 🌶️🌶️

Phần tiêu đề “Bài 4.2: Ngày này năm 2024 là thứ mấy 🌶️🌶️”

Đề thi thật: Bảng A 2024 - Tài năng Tin học trẻ (YICT), Bài 2.

Biết ngày 1/1/2024 là thứ Hai. Nhập ngày D và tháng M (1 ≤ D ≤ 31; 1 ≤ M ≤ 12) của năm 2024. Nói ra số từ 2 đến 8 ứng với thứ Hai đến Chủ nhật; nếu ngày đó không có thật thì nói 0.

NhậpNói ra
2
1
3
30
2
0
7
4
8
Xem lời giải

Vui lòng liên hệ tác giả (thông tin ở cuối trang) để mua bộ bài giải và code. Xin cảm ơn.

Bài 4.3: Tổng số ngày qua nhiều năm 🌶️🌶️🌶️

Phần tiêu đề “Bài 4.3: Tổng số ngày qua nhiều năm 🌶️🌶️🌶️”

Đề thi thật: Bảng A 2025 - Vòng sơ khảo thí sinh tự do lần 2, Bài 2.

Năm nhuận có 366 ngày, năm không nhuận có 365 ngày. Tính tổng số ngày của tất cả các năm từ năm X đến năm Y (kể cả X và Y). Nhập X, Y trên 2 dòng (X ≤ Y ≤ 1012; một nửa số điểm có Y ≤ 106).

NhậpNói raGiải thích
2024
2028
18272024 và 2028 là năm nhuận.
2025
2124
36524Có 24 năm nhuận.
Xem lời giải

Vui lòng liên hệ tác giả (thông tin ở cuối trang) để mua bộ bài giải và code. Xin cảm ơn.

Bài 4.4: Số ngày tập luyện 🌶️🌶️🌶️

Phần tiêu đề “Bài 4.4: Số ngày tập luyện 🌶️🌶️🌶️”

Đề thi thật: Bảng A 2025 - Vòng sơ khảo toàn quốc lần 3, Bài 4.

Mỗi tuần nghỉ cố định vào thứ m, các ngày khác đều tập. Đợt huấn luyện bắt đầu từ thứ k và kéo dài d ngày liên tiếp. Tính số ngày tập. Nhập k, d, m trên 3 dòng (thứ Hai là 2, …, Chủ nhật là 8; 1 ≤ d ≤ 1015).

NhậpNói raGiải thích
5
10
6
8Trong 10 ngày có 2 ngày thứ Sáu.
7
7
6
6Trong 7 ngày có 1 ngày thứ Sáu.
Xem lời giải

Vui lòng liên hệ tác giả (thông tin ở cuối trang) để mua bộ bài giải và code. Xin cảm ơn.

Thầy cô và các em muốn mua bộ bài giải và code của các bài tập trong chuyên đề này vui lòng liên hệ tác giả qua Zalo 0972465159 hoặc Facebook. Bộ bài giải được tặng miễn phí cho thầy cô đã mua 7 chuyên đề Scratch hoặc 150 bài tập Scratch. Xin cảm ơn.