C program to check if a given year is leap year using Conditional operator
Last Updated :
13 Mar, 2023
Given an integer that represents the year, the task is to check if this is a leap year, with the help of Ternary Operator. A year is a leap year if the following conditions are satisfied:
- The year is multiple of 400.
- The year is a multiple of 4 and not a multiple of 100.
Following is pseudo-code
if year is divisible by 400 then is_leap_year
else if year is divisible by 100 then not_leap_year
else if year is divisible by 4 then is_leap_year
else not_leap_year
Below is the implementation of the above approach:
C
#include <stdbool.h>
#include <stdio.h>
bool checkYear( int n)
{
return (n % 400 == 0)
? true
: (n % 4 == 0) ? (n % 100 != 0)
: false ? true : false ;
}
int main()
{
int year = 2000;
checkYear(year) ? printf ( "Leap Year" )
: printf ( "Not a Leap Year" );
return 0;
}
|
Time Complexity: O(1), As only constant time operations are performed.
Auxiliary Space: O(1), As constant extra space is used.
Share your thoughts in the comments
Please Login to comment...