Informatică, întrebare adresată de Dexi20, 8 ani în urmă

Cerința
Fiind date vârstele a doi copii (a și b) afișați care dintre ei este cel mai mare și cu cât.

Date de intrare
Programul citește de la tastatură vârstele celor 2 copii.

Date de ieșire
Programul va calcula diferența de vârstă x și va afișa pe ecran Primul copil este mai mare cu x ani dacă primul copil are cea mai mare vârstă, Al doilea copil este mai mare cu x ani dacă al doilea copil este cel mai în vârstă sau Copiii au varste egale dacă x=0.

Restricții și precizări
1 ≤ a,b ≤ 100

Răspunsuri la întrebare

Răspuns de JolieJulie
1
#include<iostream>
using namespace std;
int main()
{   int a,b,x;
  cout<<"cati are primul copil: ";cin>>a;
  cout<<"cati are al doilea copil: ";cin>>b;
   if (a<100 && b<100)
   {
        if(a>b)
         {x=a-b;
         cout<<"primul e mai mare cu "<<x<<" ani decat al doilea";}
     if(a<b)
          {x=b-a;
          cout<<"al doilea e mai mare cu "<<x<<" ani decat primul ";}
   }
      if(a==b)
           cout<<"copiii au varste egale ";
}
Răspuns de stassahul
8
#include <iostream>

using namespace std;

int a,b;

int main()
{

   cin >> a >> b;

   if(a>b) cout << "Primul copil este mai mare cu " << a-b << " ani";
   if(b>a) cout << "Al doilea copil este mai mare cu " << b-a << " ani";
   if(b==a) cout <<"Copiii au varste egale";

}

rossetta: programul se poate optimiza putin utilizand if, else if si else :)
stassahul: Daca pun else, se primeste acelasi rezultat, dar e scris mai mult
rossetta: Ma refeream ca puteai sa scrii :
if(a>b)
cout << "Primul copil este mai mare cu " << a-b << " ani";
else if(b>a)
cout << "Al doilea copil este mai mare cu " << b-a << " ani";
else /// ramane decat un singur caz b==a
cout <<"Copiii au varste egale";
In felul acesta este putin mai optimizat programul deoarece
nu se testeaza toate cazurile.
De ex daca a > b , nu se mai testeaza si celelalte cazuri
Alte întrebări interesante