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

Scrieti un program c++ care citeste un numar n de la tastatura si afiseaza cel mai mare numar format cu cifrele sale .

Răspunsuri la întrebare

Răspuns de Utilizator anonim
1

Cea mai simpla varianta ar fi cu vectori.

#include <iostream>

using namespace std;

int main()

{

   int p=0,n,v[10],are_zero=0;

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

       v[i]=0;

   cin>>n;

   while(n)

   {

       if(n%10==0)   //daca contine zero-uri

           are_zero=1;

       v[n%10]++;

       n/=10;

   }


   for(int i=9; i>0; i--)

       while(v[i])

       {

           p=p*10+i;

           v[i]--;

       }

   if(are_zero)

   {


       while(v[0])

       {

           p*=10;

           v[0]--;

       }

       are_zero=0;


   }

   cout<<p;

   return 0;

}

   

                               

 


Utilizator anonim: sa intrebi daca nu intelegi ceva
Alte întrebări interesante