CHECKING LEAP YEAR USING C PROGRAM

Definition of leap year:

Rule 1: A year is called leap year if it is divisible by 400.
For example: 1600, 2000 etc leap year while 1500, 1700 are not leap year.
Rule 2: If year is not divisible by 400 as well as 100 but it is divisible by 4 then that year are also leap year.
For example:  2004, 2008, 1012 are leap year.

Leap year logic or Algorithm of leap year or Condition for leap year:

IF year MODULER 400 IS 0
 THEN leap_year
ELSE IF year MODULER 100 IS 0
 THEN not_leap_year
ELSE IF year MODULER 4 IS 0
 THEN leap_year
ELSE
 not_leap_year

Code 1:
1. C program to determine leap year
2. C program to find leap year or not
3. Leap year calculation in c

#include<stdio.h>
int main(){
    int year;

    printf("Enter any year: ");
    scanf("%d",&year);

    if(((year%4==0)&&(year%100!=0))||(year%400==0))
         printf("%d is a leap year",year);
    else
         printf("%d is not a leap year",year);
  
    return 0;
}

Sample output:
Enter any year: 2010
2010 is not a leap year

Code 2:
1. Write a program to find leap year in c
2. How to find leap year in c code

#include<stdio.h>
int main(){
    int year;
    int min_year,max_year;

    printf("Enter the lowest year: ");
    scanf("%d",&min_year);

    printf("Enter the heighest year: ");
    scanf("%d",&max_year);

    printf("Leap years in given range are: ");
    for(year = min_year;year <= max_year; year++){
         if(((year%4==0)&&(year%100!=0))||(year%400==0))
             printf("%d ",year);
    }
  
    return 0;
}

Sample output:
Enter the lowest year: 2000
Enter the highest year: 2011
Leap years in given range is: 2000 2004 2008


10. Write a c program to add two numbers without using addition operator.
11. Write a c program to subtract two numbers without using subtraction operator.
15. Write a c program to solve quadratic equation.
18. Write a c program which passes structure to function.
28. Write a c program which takes password from user.
29. Write a scanf function in c which accept sentence from user.
30. Write a scanf function in c which accept paragraph from user.

22 comments:

  1. please make a change of if statement

    if(((year%4==0)&&(year%100!=0))||(year%400==0))

    ReplyDelete
  2. Great work :) thanks a lot.. my doubt got cleared ...

    ReplyDelete
  3. great job yarrrr

    ReplyDelete
  4. YOU CAN TRUNCATE THE MIDDLE PART NUM%100 BECAUSE THERE ARE SOME LEAP WHOSE MODULUS ARE EQUAL TO HUNDERED

    ReplyDelete
  5. why dont u write it as year%4==0
    it means year divided by 4 leaves remainder 0..
    is it correct?

    ReplyDelete
  6. can u help me do it without using if statement

    ReplyDelete
  7. write a c program swapping of to no with out using third variable & with out using addition & substracting?

    ReplyDelete
  8. 1500 and 1700 are leap years...
    you mentioned that it is not a leap year...

    ReplyDelete
    Replies
    1. From wiki: 1600 was a leap year, but 1700, 1800 and 1900 were not.
      To understand concept of leap year I hope this link will help you: Concept of leap year

      Delete
  9. i hav a doubt...anybody can clear tis pls??? is thr any need to divide a year by 100?? y r v using tat???

    ReplyDelete
    Replies
    1. I hope this will helpful ..

      1600, 2000 etc leap year while 1500, 1700 are not leap year.

      // if we enter 1500

      if ( ( (year%4==0) && (year%100!=0)) || (year%400==0) )
      {
      // according to this 1500 not a leap year..
      }
      -----------------------------------
      if ( (year%4==0) || (year%400==0) )
      {
      // according to this 1500 a leap year..
      }

      Delete
  10. very useful

    ReplyDelete
  11. can you do same program without using any logical operator?

    ReplyDelete
  12. Nice Explanation available in this : http://www.youtube.com/watch?v=1x-oBF3vgk0&list=PLPgpWDN1BdTvWebvqTXQie6yIjx6yOXFZ&index=2

    ReplyDelete
  13. int main(){

    int year;




    printf("Enter any year: ");

    scanf("%d",&year);




    if(((year%4==0)&&(year%100!=0))||(year%400==0))

    printf("%d is a leap year",year);

    else

    printf("%d is not a leap year",year);



    return 0;

    }

    ..............................................................
    I think it's a wrong code.
    when I try 2200 it shows that the year isn't leap year.
    ...............................................................
    I think the code will be,

    int main(){

    int year;




    printf("Enter any year: ");

    scanf("%d",&year);




    if(year%4==0)

    printf("%d is a leap year",year);

    else

    printf("%d is not a leap year",year);



    return 0;

    }
    ..........................................................................
    If I'm wrong , please explain......

    ReplyDelete