Được đưa ra với ngày hiện tại và ngày sinh của một người và nhiệm vụ là tính tuổi hiện tại của người đó.
Ví dụ
Input-: present date-: 21/9/2019 Birth date-: 25/9/1996 Output-: Present Age Years: 22 Months:11 Days: 26
Phương pháp tiếp cận được sử dụng bên dưới như sau -
- Nhập ngày hiện tại và ngày sinh của một người
- Kiểm tra các điều kiện
- Nếu tháng hiện tại nhỏ hơn tháng sinh thì chúng tôi sẽ không xem xét năm hiện tại vì năm này vẫn chưa được hoàn thành và để tính chênh lệch giữa các tháng bằng cách thêm 12 vào tháng hiện tại.
- Nếu ngày hiện tại nhỏ hơn ngày sinh, thì chúng tôi sẽ không tính đến tháng và để tạo các ngày bị trừ, hãy thêm số ngày trong tháng vào ngày hiện tại và kết quả sẽ khác nhau về các ngày.
- Khi các điều kiện này được đáp ứng, chỉ cần trừ ngày, tháng và năm để có kết quả cuối cùng
- In độ tuổi cuối cùng
Thuật toán
Start Step 1-> declare function to calculate age void age(int present_date, int present_month, int present_year, int birth_date, int birth_month, int birth_year) Set int month[] = { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 } IF (birth_date > present_date) Set present_date = present_date + month[birth_month - 1] Set present_month = present_month – 1 End IF (birth_month > present_month) Set present_year = present_year – 1 Set present_month = present_month + 12 End Set int final_date = present_date - birth_date Set int final_month = present_month - birth_month Set int final_year = present_year - birth_year Print final_year, final_month, final_date Step 2-> In main() Set int present_date = 21 Set int present_month = 9 Set int present_year = 2019 Set int birth_date = 25 Set int birth_month = 9 Set int birth_year = 1996 Call age(present_date, present_month, present_year, birth_date, birth_month, birth_year) Stop
Ví dụ
#include <stdio.h> #include <stdlib.h> // function to calculate current age void age(int present_date, int present_month, int present_year, int birth_date, int birth_month, int birth_year) { int month[] = { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 }; if (birth_date > present_date) { present_date = present_date + month[birth_month - 1]; present_month = present_month - 1; } if (birth_month > present_month) { present_year = present_year - 1; present_month = present_month + 12; } int final_date = present_date - birth_date; int final_month = present_month - birth_month; int final_year = present_year - birth_year; printf("Present Age Years: %d Months: %d Days: %d", final_year, final_month, final_date); } int main() { int present_date = 21; int present_month = 9; int present_year = 2019; int birth_date = 25; int birth_month = 9; int birth_year = 1996; age(present_date, present_month, present_year, birth_date, birth_month, birth_year); return 0; }
Đầu ra
NẾU CHÚNG TÔI CHẠY MÃ TRÊN, NÓ SẼ TẠO ĐẦU RA SAU ĐÂY
Present Age Years: 22 Months:11 Days: 26