Python Program to input two dates and to print gap between them # calculate your age

dd = int(input ('Enter Date: '))

mm = int(input ('Enter Month: '))

yy = int(input ('Enter Year: '))


td = int(input ('Enter Today\'s Date: '))

tm = int(input ('Enter Today\'s Month: '))

ty = int(input ('Enter Today\'s Year: '))


ay=ad=am=0

if (mm<tm):

    ay=ty-yy

    if (mm==(tm-1)):

        if (dd>tm):

            am=0

    else:

        if (dd>tm):

            am = tm-mm-1

        else:

            am = tm-mm

   

   

elif (mm>tm):

    ay=ty-yy-1

    if (dd<td):

        am = 12-mm+tm

    else:

        am=11-mm+tm

   

   

else :

   

    if (dd<td):

        ay=ty-yy

        ad = td - dd

        am=0


    elif (dd>td):

        ay=ty-yy-1

        am=11

        if ( mm==2 or mm== 4 or mm==6 or mm==8 or mm==9 or mm==11 or mm==1):

            ad = 31-dd+td

        elif (mm== 5 or mm==7 or mm==10 or mm==12):

            ad = 30-dd+td

        else:

           if (ty%4==0):

              ad = 29-dd+td

           else:

              ad = 28-dd+td

    else :

        ay = ty-yy

        ad=0

        am=0


if (mm!=tm):

   

    if ( mm==1 or mm== 3 or mm==5 or mm==7 or mm==8 or mm==10 or mm==12):

        ad = 31-dd+td

        if (ad>31):

            ad-=31

    elif (mm== 4 or mm==6 or mm==9 or mm==11):

        ad = 30-dd+td

        if (ad>30):

            ad-=30

    else:

        if (ty%4==0):

            ad = 29-dd+td

            if (ad>29):

                ad-=29

        else:

            ad = 28-dd+td

            if (ad>28):

            dd = int(input ('Enter Date: '))

mm = int(input ('Enter Month: '))

yy = int(input ('Enter Year: '))


td = int(input ('Enter Today\'s Date: '))

tm = int(input ('Enter Today\'s Month: '))

ty = int(input ('Enter Today\'s Year: '))


ay=ad=am=0

if (mm<tm):

    ay=ty-yy

    if (mm==(tm-1)):

        if (dd>tm):

            am=0

    else:

        if (dd>tm):

            am = tm-mm-1

        else:

            am = tm-mm

   

   

elif (mm>tm):

    ay=ty-yy-1

    if (dd<td):

        am = 12-mm+tm

    else:

        am=11-mm+tm

   

   

else :

   

    if (dd<td):

        ay=ty-yy

        ad = td - dd

        am=0


    elif (dd>td):

        ay=ty-yy-1

        am=11

        if ( mm==2 or mm== 4 or mm==6 or mm==8 or mm==9 or mm==11 or mm==1):

            ad = 31-dd+td

        elif (mm== 5 or mm==7 or mm==10 or mm==12):

            ad = 30-dd+td

        else:

           if (ty%4==0):

              ad = 29-dd+td

           else:

              ad = 28-dd+td

    else :

        ay = ty-yy

        ad=0

        am=0


if (mm!=tm):

   

    if ( mm==1 or mm== 3 or mm==5 or mm==7 or mm==8 or mm==10 or mm==12):

        ad = 31-dd+td

        if (ad>31):

            ad-=31

    elif (mm== 4 or mm==6 or mm==9 or mm==11):

        ad = 30-dd+td

        if (ad>30):

            ad-=30

    else:

        if (ty%4==0):

            ad = 29-dd+td

            if (ad>29):

                ad-=29

        else:

            ad = 28-dd+td

            if (ad>28):

                ad-=28

print ('Age : ',ay,' Years', am,' Months ', ad, ' Days.')    

Comments

Some popular posts

Python Program that computes the net amount of a bank account based a transaction log from console input.

Python Program which will find all such numbers between 1000 and 3000 (both included) such that each digit of the number is an even number.The numbers obtained should be printed in a comma-separated sequence on a single line