Leap Year

\[ \begin{align}\begin{aligned}\newcommand\blank{~\underline{\hspace{1.2cm}}~}\\% Bold symbols (vectors) \newcommand\bs[1]{\mathbf{#1}}\\% Poor man's siunitx \newcommand\unit[1]{\mathrm{#1}} \newcommand\num[1]{#1} \newcommand\qty[2]{#1~\unit{#2}}\\\newcommand\per{/} \newcommand\squared{{}^2} % % Scale \newcommand\milli{\unit{m}} \newcommand\centi{\unit{c}} \newcommand\kilo{\unit{k}} \newcommand\mega{\unit{M}} % % Angle \newcommand\radian{\unit{rad}} \newcommand\degree{\unit{{}^\circ}} % % Time \newcommand\second{\unit{s}} % % Distance \newcommand\meter{\unit{m}} \newcommand\m{\meter} \newcommand\inch{\unit{in}} \newcommand\feet{\unit{ft}} \newcommand\mile{\unit{mi}} \newcommand\mi{\mile} % % Volume \newcommand\gallon{\unit{gal}} % % Mass \newcommand\gram{\unit{g}} \newcommand\g{\gram} % % Frequency \newcommand\hertz{\unit{Hz}} \newcommand\rpm{\unit{rpm}} % % Voltage \newcommand\volt{\unit{V}} \newcommand\V{\volt} \newcommand\millivolt{\milli\volt} \newcommand\mV{\milli\volt} \newcommand\kilovolt{\kilo\volt} \newcommand\kV{\kilo\volt} % % Current \newcommand\ampere{\unit{A}} \newcommand\A{\ampere} \newcommand\milliampereA{\milli\ampere} \newcommand\mA{\milli\ampere} \newcommand\kiloampereA{\kilo\ampere} \newcommand\kA{\kilo\ampere} % % Resistance \newcommand\ohm{\Omega} \newcommand\milliohm{\milli\ohm} \newcommand\kiloohm{\kilo\ohm} % correct SI spelling \newcommand\kilohm{\kilo\ohm} % "American" spelling used in siunitx \newcommand\megaohm{\mega\ohm} % correct SI spelling \newcommand\megohm{\mega\ohm} % "American" spelling used in siunitx % % Inductance \newcommand\henry{\unit{H}} \newcommand\H{\henry} \newcommand\millihenry{\milli\henry} \newcommand\mH{\milli\henry} % % Temperature \newcommand\celsius{\unit{^{\circ}C}} \newcommand\C{\unit{\celsius}} \newcommand\fahrenheit{\unit{^{\circ}F}} \newcommand\F{\unit{\fahrenheit}} \newcommand\kelvin{\unit{\K}} \newcommand\K{\unit{\kelvin}}\\% Power \newcommand\watt{\unit{W}} \newcommand\W{\watt} \newcommand\milliwatt{\milli\watt} \newcommand\mW{\milli\watt} \newcommand\kilowatt{\kilo\watt} \newcommand\kW{\kilo\watt} % % Torque \newcommand\ozin{\unit{oz}\text{-}\unit{in}} \newcommand\newtonmeter{\unit{N\text{-}m}}\end{aligned}\end{align} \]

Apr 16, 2025 | 205 words | 2 min read

2.2.1. Leap Year#

The month of February normally has \(28\) days, but if it is a leap year, February has \(29\) days. Write a Python that asks the user to enter a year. The program should then display the number of days in February that year. Use the following criteria to identify leap years:

  • Determine whether the year is divisible by \(100\). If it is then it is a leap year if and only if it is also divisible by \(400\). For example, \(2000\) is a leap year but \(2100\) is not.

  • If the year is not divisible by \(100\), then it is a leap year if and only if it is divisible by \(4\).

Sample Output#

Use the values in Table 2.1 below to test your program.

Table 2.1 Test Cases#

Case

years

1

1900

2

2000

3

2020

4

2022

Ensure your program’s output matches the provided samples exactly. This includes all characters, white space, and punctuation. In the samples, user input is highlighted like this for clarity, but your program should not highlight user input in this way.

Case 1 Sample Output

$ python3 leap_year_login.py Enter a year: 1900 The year 1900 is not a leap year. February of 1900 has 28 days.

Case 2 Sample Output

$ python3 leap_year_login.py Enter a year: 2000 The year 2000 is a leap year. February of 2000 has 29 days.

Case 3 Sample Output

$ python3 leap_year_login.py Enter a year: 2020 The year 2020 is a leap year. February of 2020 has 29 days.

Case 4 Sample Output

$ python3 leap_year_login.py Enter a year: 2022 The year 2022 is not a leap year. February of 2022 has 28 days.

Deliverables#

Save your finished program as leap_year_login.py, replacing login with your Purdue login. Then submit it along with all the deliverables listed in Table 2.2 below.

Table 2.2 Deliverables#

Deliverable

Description

leap_year_login.py

Your finished program.

Screenshot(s)

PNG(s) capturing all 4 test cases.