Se dau 2 numere naturale cu exact 3 cifre fiecare, să se afișeze cel mai mare și cel mai mic număr de două cifre scris cu o cifră din primul număr și cu o cifră din al doilea. Date de intrare Programul citește de la tastatură 2 numere separate prin spații. Date de ieșire Programul va afișa pe ecran cel mai mare și cel mai mic număr de două cifre scris cu o cifră din primul număr și cu o cifră din al doilea în această ordine, separate prin spații. Restricții și precizări 100 ≤ a ≤ b ≤ 999 Exemplu Intrare 123 912 Ieșire 93 11

Răspuns :

Răspuns:

#include <iostream>

using namespace std;

int main()

{

int a, b, maxa, maxb, mina, minb;

cin >> a >> b;

maxa = a % 10;

mina = a % 10;

minb = b % 10;

maxb = b % 10;

a = a / 10;

b = b / 10;

while (a != 0)

{

 if (a % 10>maxa)

  maxa = a % 10;

 if (a % 10<mina)

  mina = a % 10;

 a = a / 10;

}

while (b != 0)

{

 if (b % 10>maxb)

  maxb = b % 10;

 if (b % 10<minb)

  minb = b % 10;

 b = b / 10;

}

if (maxa >= maxb)

 cout << maxa * 10 + maxb << " ";

else cout << maxb * 10 + maxa << " ";

if (mina >= minb)

 cout << minb * 10 + mina;

else cout << mina * 10 + minb;

return 0;

}

Explicație:

Nu e prea mult de explicat, doar am calculat cea mai mare si cea mai mica cifra din fiecare numar si dupa aceea totul e simplu.