👤

1)    Cunoscând
data curentă exprimată prin trei numere întregi reprezentând anul, luna, ziua
precum şi data naşterii unei persoane, exprimată la fel, să se facă un program
care să calculeze vârsta persoanei respective în număr de ani împliniţi.
Exemplu : Date de intrare  data
curenta 2005  10  25 
data nasterii 1960  11  2  Date
de ieşire 44 ani.    








Răspuns :

Trebuie să facem, în principiu, diferența dintre cei 2 ani. Dar dacă în anul din prezent data este mai devreme decât cea de naștere, scădem 1 din vârstă. O să dau o expresie, apoi o transform în program. Fie variabilele zn,ln,an,zc,lc,ac ziua, luna, anul nașterii, ziua curentă, luna curentă și anul curent. Expresia este:

cout<<(lc>ln||lc==ln&&zc>=zn)?(ac-an):(ac-an-1);

Acuma programul mai ușor de înțeles: (v este vârsta)

v=ac-an-1;
if(lc>ln) v=ac-an;
if(lc==ln) if (zc>=zn) v=ac-an;
cout<<v;

Asta cred că e problemă de clasă :)) deci folosește-te de bucata de program :)) (faza cu expresia e cam dificil de înțeles, pentru că nu cred că știi operatorul semn-de-întrebare)