logo

Viết chương trình nhập hai số tự nhiên Y1, Y2 là số năm, Y2 > Y1. Tính xem trong khoảng thời gian từ năm Y1 đến năm Y2 có bao nhiêu năm nhuận

Câu hỏi: Viết chương trình nhập hai số tự nhiên Y1, Y2 là số năm, Y2 > Y1. Tính xem trong khoảng thời gian từ năm Y1 đến năm Y2 có bao nhiêu năm nhuận. Áp dụng tính xem trong thế kỉ XXI có bao nhiêu năm nhuận.

Lời giải:

Cách 1:

Dựa vào kiến thức đã học để viết chương trình

Để kiểm tra 1 năm có phải năm nhuận hay không, cần tuân theo 1 trong 2 nguyên tắc sau đây.

- Năm nhuận là năm chia hết cho 400

- Năm nhuận là năm chia hết cho 4 nhưng không chia hết cho 100

 Viết chương trình nhập hai số tự nhiên Y1, Y2 là số năm, Y2 > Y1. Tính xem trong khoảng thời gian từ năm Y1 đến năm Y2 có bao nhiêu năm nhuận. Áp dụng tính xem trong thế kỉ XXI có bao nhiêu năm nhuận.

Để tính xem trong thế kỉ XXI có bao nhiêu năm nhuận, nhập Y1 = 2001 và Y2 = 2100.

Cách 2 viết trong Python:

def is_leap_year(year):
   if year % 400 == 0:
       return True
   elif year % 100 == 0:
       return False
   elif year % 4 == 0:
       return True
   else:
       return False

Y1 = int(input("Nhập năm Y1: "))
Y2 = int(input("Nhập năm Y2: "))

leap_years = []
for year in range(Y1, Y2 + 1):
   if is_leap_year(year):
       leap_years.append(year)

if len(leap_years) > 0:
   print("Các năm nhuận trong khoảng thời gian từ Y1 đến Y2 là:", leap_years)
else:
   print("Không có năm nhuận nào trong khoảng thời gian từ Y1 đến Y2.")

icon-date
Xuất bản : 11/09/2022 - Cập nhật : 21/11/2023