👤

Andrei a învățat cum se măsoară timpul (ore şi minute). Se uită la ceas şi vede că e ora 18:12. Ca să

arate că a înțeles cum se măsoară timpul, Andrei se gândește să folosească cele patru cifre pentru a

găsi ora cea mai mică şi ora cea mai mare care se pot forma cu aceste cifre. Găsește că ora cea mai

mică este 11:28 şi ora cea mai mare este 21:18.
Va rog,e urgent!Dau coroana


Răspuns :

Răspuns:

#include <iostream>

using namespace std;

short hh,mm, a[4],i,j;

int main()

{

   cout << "ora= "; cin >> hh;

   cout << "minute= "; cin >> mm;

   a[0]=hh/10; a[1]=hh%10;

   a[2]=mm/10; a[3]=mm%10;

   for (i=0; i<3; ++i)

       for (j=i+1; j<4; ++j)

       if (a[j]<a[i]) swap(a[j],a[i]);

   cout << "ora cea mai mica este " << a[0]<<a[1]<<":"<<a[2]<<a[3]<<endl;

   if (a[3]>a[0] && a[3]<3) swap(a[0],a[3]);

   if (a[3]>a[1] && a[3]<4) swap(a[1],a[3]);

   if (a[2]>a[0] && a[2]<3) swap(a[0],a[2]);

   if (a[2]>a[1] && a[2]<4) swap(a[1],a[2]);

   if (a[2]<a[3] && a[3]<6) swap(a[2],a[3]);

   cout << "ora cea mai mare este " << a[0]<<a[1]<<":"<<a[2]<<a[3]<<endl;

}

Explicație:

dacă nu ştii de swap, ea interschimbă valorile, de exemplu

swap(a[0],a[3]); este echivalentă setului de comenzi

{ short aux=a[0]; a[0]=a[3]; a[3]=aux; }