Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- * File: pocetdni.c
- * Author: tom
- *
- * Created on 24. říjen 2010, 20:45
- */
- #include <stdio.h>
- #include <stdlib.h>
- /*
- *
- */
- int main(int argc, char** argv) {
- long long int r22=0,r111,r1111,r2222,r222,d1=0,m1=0,r1=0,d2=0,m2=0,r2=0,pocetd1=0,pocetm1=0,pocetr1=0,pocetd2=0,pocetm2=0,pocetr2=0,p1r1=0,p2r1=0,p3r1=0,p4r1=0,pocet1=0,p1r2=0,p2r2=0,p3r2=0,p4r2=0,pocet2=0,pocet=0,pocet11=0,pocet22=0;
- printf("Zadejte prvni datum - den mesic rok:\n");
- if (scanf("%lld %lld %lld", &d1, &m1 ,&r1)!=3) {printf("Nespravny vstup.\n"); return(0);}
- if (r1<=0 || m1>12 || d1>31 || m1<=0 || d1<=0) {printf("Nespravny vstup.\n"); return(0);}
- if ((m1==2 && d1>29) || (m1==4 && d1>30) || (m1==6 && d1>30) || (m1==9 && d1>30) || (m1==11 && d1>30)) {printf("Nespravny vstup.\n"); return(0);}
- if (r1==1584 && m1==1 && d1>6 && d1<17) {printf("Nespravny vstup.\n"); return(0);}
- if (r1<1584 || (r1==1584 && m1==1 && d1<7))
- if (r1%4!=0)
- if (m1==2 && d1>28) {printf("Nespravny vstup.\n"); return(0);}
- if (r1>1584 || (r1==1584 && m1>1) || (r1==1584 && m1==1 && d1>16))
- if (r1%4000==0 || (r1%400!=0 && r1%100==0) || r1%4!=0)
- if (m1==2 && d1>28) {printf("Nespravny vstup.\n"); return(0);}
- printf("Zadejte druhe datum - den mesic rok:\n");
- if (scanf("%lld %lld %lld", &d2, &m2 ,&r2)!=3) {printf("Nespravny vstup.\n"); return(0);}
- if (r2<=0 || m2>12 || d2>31 || m2<=0 || d2<=0) {printf("Nespravny vstup.\n"); return(0);}
- if ((m2==2 && d2>29) || (m2==4 && d2>30) || (m2==6 && d2>30) || (m2==9 && d2>30) || (m2==11 && d2>30)) {printf("Nespravny vstup.\n"); return(0);}
- if (r2==1584 && m2==1 && d2>6 && d2<17) {printf("Nespravny vstup.\n"); return(0);}
- if (r2<1584 || (r2==1584 && m2==1 && d2<7))
- if (r1%4!=0)
- if (m2==2 && d2>28) {printf("Nespravny vstup.\n"); return(0);}
- if (r2>1584 || (r2==1584 && m2>1) || (r2==1584 && m2==1 && d2>16))
- if (r2%4000==0 || (r2%400!=0 && r2%100==0) || r2%4!=0)
- if (m2==2 && d2>28) {printf("Nespravny vstup.\n"); return(0);}
- if (r1>r2 || (r2==r1 && m1>m2) || (r2==r1 && m2==m1 && d2<d1)) {printf("Prve datum je vetsi nez datum druhe.\n"); return(0);}
- r22=r2;
- r222=r2;
- r111=r1;
- r1111=r1;
- r2222=r2;
- if (r1>1584 || (r1==1584 && m1>1) || (r1==1584 && m1==1 && d1>16))
- {
- pocetd1=d1;
- pocetd2=d2;
- if (r1%4000!=0 && (r1%400==0 || (r1%100!=0 && r1%4==0)))
- {
- switch (m1)
- {
- case 1 : pocetm1=0; break;
- case 2 : pocetm1=31; break;
- case 3 : pocetm1=60; break;
- case 4 : pocetm1=91; break;
- case 5 : pocetm1=121; break;
- case 6 : pocetm1=152; break;
- case 7 : pocetm1=182; break;
- case 8 : pocetm1=213; break;
- case 9 : pocetm1=244; break;
- case 10 : pocetm1=274; break;
- case 11 : pocetm1=305; break;
- case 12 : pocetm1=335; break;
- }
- }
- else
- {
- switch (m1)
- {
- case 1 : pocetm1=0; break;
- case 2 : pocetm1=31; break;
- case 3 : pocetm1=59; break;
- case 4 : pocetm1=90; break;
- case 5 : pocetm1=120; break;
- case 6 : pocetm1=151; break;
- case 7 : pocetm1=181; break;
- case 8 : pocetm1=212; break;
- case 9 : pocetm1=243; break;
- case 10 : pocetm1=273; break;
- case 11 : pocetm1=304; break;
- case 12 : pocetm1=334; break;
- }
- }
- if (r2%4000!=0 && (r2%400==0 || (r2%100!=0 && r2%4==0)))
- {
- switch (m2)
- {
- case 1 : pocetm2=0; break;
- case 2 : pocetm2=31; break;
- case 3 : pocetm2=60; break;
- case 4 : pocetm2=91; break;
- case 5 : pocetm2=121; break;
- case 6 : pocetm2=152; break;
- case 7 : pocetm2=182; break;
- case 8 : pocetm2=213; break;
- case 9 : pocetm2=244; break;
- case 10 : pocetm2=274; break;
- case 11 : pocetm2=305; break;
- case 12 : pocetm2=335; break;
- }
- }
- else
- {
- switch (m2)
- {
- case 1 : pocetm2=0; break;
- case 2 : pocetm2=31; break;
- case 3 : pocetm2=59; break;
- case 4 : pocetm2=90; break;
- case 5 : pocetm2=120; break;
- case 6 : pocetm2=151; break;
- case 7 : pocetm2=181; break;
- case 8 : pocetm2=212; break;
- case 9 : pocetm2=243; break;
- case 10 : pocetm2=273; break;
- case 11 : pocetm2=304; break;
- case 12 : pocetm2=334; break;
- }
- }
- r1=r1--;
- r2=r2--;
- p1r1=r1/4;
- p2r1=r1/100;
- p3r1=r1/400;
- p4r1=r1/4000;
- pocetr1=r1*365;
- pocetr1=pocetr1+p1r1-p2r1+p3r1-p4r1;
- pocet1=pocetd1+pocetm1+pocetr1;
- p1r2=r2/4;
- p2r2=r2/100;
- p3r2=r2/400;
- p4r2=r2/4000;
- pocetr2=r2*365;
- pocetr2=pocetr2+p1r2-p2r2+p3r2-p4r2;
- pocet2=pocetd2+pocetm2+pocetr2;
- pocet=pocet2-pocet1;
- }
- if (r22<1584 || (r22==1584 && m2==1 && d2<7))
- {
- pocetd1=d1;
- pocetd2=d2;
- if (r1%4==0)
- {
- switch (m1)
- {
- case 1 : pocetm1=0; break;
- case 2 : pocetm1=31; break;
- case 3 : pocetm1=60; break;
- case 4 : pocetm1=91; break;
- case 5 : pocetm1=121; break;
- case 6 : pocetm1=152; break;
- case 7 : pocetm1=182; break;
- case 8 : pocetm1=213; break;
- case 9 : pocetm1=244; break;
- case 10 : pocetm1=274; break;
- case 11 : pocetm1=305; break;
- case 12 : pocetm1=335; break;
- }
- }
- else
- {
- switch (m1)
- {
- case 1 : pocetm1=0; break;
- case 2 : pocetm1=31; break;
- case 3 : pocetm1=59; break;
- case 4 : pocetm1=90; break;
- case 5 : pocetm1=120; break;
- case 6 : pocetm1=151; break;
- case 7 : pocetm1=181; break;
- case 8 : pocetm1=212; break;
- case 9 : pocetm1=243; break;
- case 10 : pocetm1=273; break;
- case 11 : pocetm1=304; break;
- case 12 : pocetm1=334; break;
- }
- }
- if (r2%4==0)
- {
- switch (m2)
- {
- case 1 : pocetm2=0; break;
- case 2 : pocetm2=31; break;
- case 3 : pocetm2=60; break;
- case 4 : pocetm2=91; break;
- case 5 : pocetm2=121; break;
- case 6 : pocetm2=152; break;
- case 7 : pocetm2=182; break;
- case 8 : pocetm2=213; break;
- case 9 : pocetm2=244; break;
- case 10 : pocetm2=274; break;
- case 11 : pocetm2=305; break;
- case 12 : pocetm2=335; break;
- }
- }
- else
- {
- switch (m2)
- {
- case 1 : pocetm2=0; break;
- case 2 : pocetm2=31; break;
- case 3 : pocetm2=59; break;
- case 4 : pocetm2=90; break;
- case 5 : pocetm2=120; break;
- case 6 : pocetm2=151; break;
- case 7 : pocetm2=181; break;
- case 8 : pocetm2=212; break;
- case 9 : pocetm2=243; break;
- case 10 : pocetm2=273; break;
- case 11 : pocetm2=304; break;
- case 12 : pocetm2=334; break;
- }
- }
- r1=r1--;
- r2=r2--;
- p1r1=r1/4;
- pocetr1=r1*365;
- pocetr1=pocetr1+p1r1;
- pocet1=pocetd1+pocetm1+pocetr1;
- p1r2=r2/4;
- pocetr2=r2*365;
- pocetr2=pocetr2+p1r2;
- pocet2=pocetd2+pocetm2+pocetr2;
- pocet=pocet2-pocet1;
- }
- if ((r222>1584 || (r222==1584 && m2>1) || (r222==1584 && m2==1 && d2>16)) && (r111<1584 || (r111==1584 && m1==1 && d1<7)))
- {
- pocetd1=d1;
- pocetd2=d2;
- if (r2%4000!=0 && (r2%400==0 || (r2%100!=0 && r2%4==0)))
- {
- switch (m2)
- {
- case 1 : pocetm2=0; break;
- case 2 : pocetm2=31; break;
- case 3 : pocetm2=60; break;
- case 4 : pocetm2=91; break;
- case 5 : pocetm2=121; break;
- case 6 : pocetm2=152; break;
- case 7 : pocetm2=182; break;
- case 8 : pocetm2=213; break;
- case 9 : pocetm2=244; break;
- case 10 : pocetm2=274; break;
- case 11 : pocetm2=305; break;
- case 12 : pocetm2=335; break;
- }
- }
- else
- {
- switch (m2)
- {
- case 1 : pocetm2=0; break;
- case 2 : pocetm2=31; break;
- case 3 : pocetm2=59; break;
- case 4 : pocetm2=90; break;
- case 5 : pocetm2=120; break;
- case 6 : pocetm2=151; break;
- case 7 : pocetm2=181; break;
- case 8 : pocetm2=212; break;
- case 9 : pocetm2=243; break;
- case 10 : pocetm2=273; break;
- case 11 : pocetm2=304; break;
- case 12 : pocetm2=334; break;
- }
- }
- if (r1%4==0)
- {
- switch (m1)
- {
- case 1 : pocetm1=0; break;
- case 2 : pocetm1=31; break;
- case 3 : pocetm1=60; break;
- case 4 : pocetm1=91; break;
- case 5 : pocetm1=121; break;
- case 6 : pocetm1=152; break;
- case 7 : pocetm1=182; break;
- case 8 : pocetm1=213; break;
- case 9 : pocetm1=244; break;
- case 10 : pocetm1=274; break;
- case 11 : pocetm1=305; break;
- case 12 : pocetm1=335; break;
- }
- }
- else
- {
- switch (m1)
- {
- case 1 : pocetm1=0; break;
- case 2 : pocetm1=31; break;
- case 3 : pocetm1=59; break;
- case 4 : pocetm1=90; break;
- case 5 : pocetm1=120; break;
- case 6 : pocetm1=151; break;
- case 7 : pocetm1=181; break;
- case 8 : pocetm1=212; break;
- case 9 : pocetm1=243; break;
- case 10 : pocetm1=273; break;
- case 11 : pocetm1=304; break;
- case 12 : pocetm1=334; break;
- }
- }
- r1=r1-1;
- r2=r2-1;
- p1r1=r1/4;
- pocetr1=r1*365;
- pocetr1=pocetr1+p1r1;
- pocet1=pocetd1+pocetm1+pocetr1;
- pocet11=578196-pocet1;
- p1r2=r2/4;
- p2r2=r2/100;
- p3r2=r2/400;
- p4r2=r2/4000;
- pocetr2=r2*365;
- pocetr2=pocetr2+p1r2-p2r2+p3r2-p4r2;
- pocet2=pocetd2+pocetm2+pocetr2;
- pocet22=pocet2-578195;
- pocet=pocet22+pocet11+1;
- }
- printf("Mezi %lld.%lld.%lld a %lld.%lld.%lld ubehlo %lld dni.\n",d1,m1,r1111,d2,m2,r2222,pocet);
- return (EXIT_SUCCESS);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement