Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*6. Koristeći funkciju iz prethodnog zadatka napisati funkciju koja za unesen datum
- rođenja računa koliko je rođendana osoba do sada mogla proslaviti. Unos se vrši u
- main funkciji i ponavlja sve dok korisnik ne unese prijestupnu godinu.
- Primjer: Osoba rođena 29.2.2000. godine slavila bi do sad pet rođendana.*/
- #define _CRT_SECURE_NO_WARNINGS
- #include<stdio.h>
- int is_Date_Valid(int, int, int);
- int is_Leap(int);
- int main()
- {
- int day, month, year;
- printf("Upisi dan, mjesec i godinu rodjenja\n");
- scanf(" %d %d %d", &day, &month, &year);
- if ((is_Leap(year) == 1) && (day == 29) && (month == 2))
- printf("\nOsoba je mogla proslaviti %d rodjendana", (2020 - year) / 4);
- else
- printf("\nOsoba je mogla proslaviti %d rodjendana", (2020 - year));
- while (is_Leap(year) == 0)
- {
- printf("\nUpisi dan, mjesec i godinu rodjenja\n");
- scanf(" %d %d %d", &day, &month, &year);
- if ((is_Leap(year) == 1) && (day == 29) && (month == 2))
- printf("\nOsoba je mogla proslaviti %d rodjendana", (2020 - year) / 4);
- else
- printf("\nOsoba je mogla proslaviti %d rodjendana", (2020 - year));
- }
- getchar();
- getchar();
- return 1;
- }
- int is_Leap(int year)
- {
- //Return 1 for leap year,s and 0 for all others.
- if (year % 400 == 0)
- return 1;
- else if ((year % 4 == 0) && !(year % 100 == 0))
- return 1;
- else
- return 0;
- }
- int is_Date_Valid(int day, int month, int year)
- {
- //Return 1 if valid, return 0 if not valid
- if ((day > 31) || (month > 12) || (year < 1900) || (year > 2019))
- return 0;
- else if ((month == 1) || (month == 3) || (month == 5) || (month == 7) || (month == 8) || (month == 10) || (month == 12))
- {
- if (day <= 31)
- return 1;
- else
- return 0;
- }
- else if (month == 2)
- {
- if ((is_Leap(year) == 1) && (day <= 29))
- return 1;
- else if (day <= 28)
- return 1;
- else
- return 0;
- }
- else
- {
- if (day <= 30)
- return 1;
- else
- return 0;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement