In this post, we will write a C++ program to calculate the age of a human by entering data of birth. user will enter the current day, month, year, and date of birth in the day, month year. after that program will print the age of that person in a day, month, and year.

C++ program to calculate the age of human by entering data of birth


C++ program to calculate the age of human.

#include<iostream>
#include<conio.h>

int main(void)
{

    int dd,mm,yy,dd1,mm1,yy1;
    int d,m,y;
    int dd2,mm2,yy2;

    std::cout<<"Enter the current day = ";
    std::cin>>dd;
    std::cout<<"Enter the current month = ";
    std::cin>>mm;
    std::cout<<"Enter the current year = ";
    std::cin>>yy;
    std::cout<<"Enter the birth day = ";
    std::cin>>dd1;
    std::cout<<"Enter the birth month = ";
    std::cin>>mm1;
    std::cout<<"Enter the birth year = ";
    std::cin>>yy1;

    if(dd1 <= dd && mm1 <= mm || yy1 <= yy)
    {
        d = dd-dd1;
        m = mm-mm1;
        y = yy-yy1;
    }

    if(dd1 <= dd && mm1 > mm && yy1 < yy)
    {
        d = dd-dd1;
        mm2 = mm+12;
        m = mm2-mm1;
        y = yy-yy1-1;
    }

    if(dd > dd && mm1 < mm && yy1 < yy)
    {
        if(mm == 1 || mm == 3 || mm == 5 || mm == 7 || mm == 8 || mm == 10 || mm == 12)
        {
            dd2 = dd+31;
            d = dd2-dd1;
            m = mm-mm1-1;
            y = yy-yy1;
        }
        if(mm == 2 && yy%4 == 0)
        {
            dd2 = dd+29;
            d = dd2-dd1;
            m = mm-mm1-1;
            y = yy-yy1;
        }
        if(mm == 2 && yy%4 != 0)
        {
            dd2 = dd + 28;
            d = dd-dd1;
            m = mm-mm1-1;
            y = yy-yy1;
        }
        if(mm == 4 || mm == 6 || mm == 9 || mm == 11)
        {
            dd2 = dd+30;
            d = dd2-dd1;
            m = mm-mm1-1;
            y = yy-yy1;
        }
    }

    if(dd1 > dd && mm1 >= mm && yy1 < yy)
    {
        if(mm == 1 || mm == 3 || mm == 5 || mm == 7 || mm == 8 || mm == 10 || mm == 12)
        {
            dd2 = dd+31;
            d = dd2-dd1;
            mm2 = mm+12-1;
            m = mm2-mm1;
            y = yy-yy1-1;
        }
        if(mm == 2 && yy%4 == 0)
        {
            dd2 = dd + 29;
            d = dd2-dd1;
            mm2 = mm + 12-1;
            m = mm2-mm1;
            y = yy-yy1-1;
        }
        if(mm == 2 && yy%4 != 0)
        {
            dd2 = dd+28;
            d = dd2-dd1;
            mm2 = mm + 12 -1;
            m = mm2-mm1;
            y = yy-yy1-1;
        }
        if(mm == 4 || mm == 6 || mm == 9 || mm == 11)
        {
            dd2 = dd+30;
            d = dd2-dd1;
            mm2 = mm+12-1;
            m = mm2 - mm1;
            y = yy-yy1-1;
        }
    }

    std::cout<<"The days are = "<<d<<std::endl;
    std::cout<<"The months are = "<<m<<std::endl;
    std::cout<<"The years are = "<<y<<std::endl;

    return 0;
}



Output

Enter the current day = 7
Enter the current month = 1
Enter the current year = 2016
Enter the previous day = 7
Enter the previous month = 7
Enter the previous year = 1982
The days are = 0
The months are = 6
The years are = 33