👤

Sa se scrie algoritmul care afiseaza cifrele ce apar in scrierea unui numar natural dat. Daca o anumita cifra apare de mai multe ori in scrierea numarului se va afisa o singura data. Problema doresc sa fie rezolvata in pseudocod nu in C++ .

Răspuns :

Răspuns:

intreg n, unu=0, doi=0, trei=0, patru=0, cinci=0, sase=0, sapte=0, opt=0, noua=0,zero=0;

citeste n;

      cat timp(n<>0) executa

  daca (n%10=0) atunci zero=zero+1;

  altfel

  daca (n%10=`1) atunci unu=unu+1;

  altfel

  daca (n%10=2) atunci doi=doi+1;

  altfel

   daca (n%10=3) atunci trei=trei+1;

   altfel

   daca (n%10=4) atunci patru=patru+1;

   altfel

   daca (n%10=5) atunci cinci=cinci+1;

   altfel

   daca (n%10=6) atunci sase=sase+1;

   altfel

   daca (n%10=7) atunci sapte=sapte+1;

   altfel

   daca (n%10=8) atunci opt=opt+1;

    altfel

    daca (n%10=9) atunci noua=noua+1;

    n=n div 10;

daca (zero!=0) atunci scrie 0;

daca (unu!=0) atunci scrie 1;

daca (doi!=0) atunci scrie 2;

daca (trei!=0) atunci scrie 3;

daca (patru!=0) atunci scrie 4;

daca (cinci!=0) atunci scrie 5;

daca (sase!=0) atunci scrie 6;

daca (sapte!=0) atunci scrie 7;

daca (opt!=0) atunci scrie 8;

daca (noua!=0) atunci scrie 9;

Explicație:

am vazut ca ai cerut ca problema sa fie rezolvata in pseudocod si am banuit ca inca nu ai invatat vectorii de frecventa. problema se putea rezolva mult mai rapid cu ajutorul unui vector de frecventa care ar fi contorizat numarul de aparitii ale fiecarei cifre si ar fi afisat cifrele care aveau nr de aparitii diferit de 0. am incercat sa respect acelasi principiu fara a ma folosi de vectorul de frecventa. sper sa te ajute