👤

Se citește un număr natural cu exact patru cifre. Determinați cel mai mare număr care se poate construi cu cifrele numărului dat.

Răspuns :

Răspuns:

#include <iostream>

using namespace std;

void sort(int a[],int k){

   for (int i = 0;i < k; i++)

       for (int j = i;j < k-1; j++)

           if (a[i] < a[j]){

               int aux = a[i];

               a[i] = a[j];

               a[j] = aux;

           }

}

int main(){

   int n;

   cout << "n=";

       cin >> n;

   int a[4];

   int k = 0;

   int m = n;

   while (n) {

       a[k] = n % 10;

       k++;

       n /= 10;

   }

   sort(a,k);

   int rs = 0;

   for (int i = 0;i < k; i++){

       rs = rs * 10 + a[i];

   }

   cout << "Cel mai mare numar posibil format din cifrele numarului "<< m << " este: " <<rs << endl;

   return 0;

}

Explicație: