Informatică, întrebare adresată de Utilizator anonim, 9 ani în urmă

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ăspunsuri la întrebare

Răspuns de netuioanaralucpb3570
2

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


Utilizator anonim: E corect dar bine ca imi raspunzi dupa 2 saptamani.
Utilizator anonim: Cand deja sunt la c++ cu contor
netuioanaralucpb3570: banuiesc ca observi ca raspunsul este postat acum 2 sapt, fix in ziua in care ai postat intrebarea ;) in caz ca ai probleme cu spiritul de observatie, nu ma priveste pe mine
netuioanaralucpb3570: politicos era sa multumesti si data viitoare sa iti verifici mai des contul ca sa observi mai atent cand ti se raspunde :) sau ai putea pune mana sa inveti si sa ti le rezolvi singurel.
Alte întrebări interesante