Informatică, întrebare adresată de EliEliza, 9 ani în urmă

Se citește de la tastatură un număr natural de 3 cifre. Să se afișeze cifrele sale în ordine crescătoare.
Urgent !!!! Daca imi explici dupa ce rezolvi iti dau coronita. Sa fie in C++

Răspunsuri la întrebare

Răspuns de Emil1234
2
#include <iostream>
using namespace std;
unsigned v[11];
int main() {
  unsigned n;
  cin>>n;
  v[n%10]++;
  v[n/10%10]++;
  v[n/100]++;
  for(int i=0;i<=9;i++)
            if(v[i]!=0)
                 cout<<i<<" ";
  return 0;
}

Am folosit un vector de frecventa initializat cu 0. Ulterior am luat ultima cifra din numar ( n%10 ), penultima cifra ( n/10%10 ) si prima cifra ( n/100 ) si am crescut cu 1 valoarea aflata la acel indice in vector. Ulterior am mers de la 0 pana la 9 si m-am intrebat care valori din vector sunt diferite din 0 si afisam pe ecran indicele. Sunt afisate in ordine crescatoare deoarece mergem de la 0 la 9 ( daca vrei in ordine descrescatoare poti merge de la 9 la 0 ). 
Daca mai ai intrebari, lasa aici un comentariu.

JohnAndrew: ce ai facut aici?
Emil1234: Citesc de la tastatura un numar de 3 cifre si afisez in ordine crescatoare cifrele sale. Exact ceea ce se cere in cerinta.
Alte întrebări interesante