#550 · Subiectul II · Programare
Numărul de apariții al fiecărei cifre și cifra de control (subprogramul gaseste_cifra)
✓ Rezolvare explicatăBucurești 2020 · nr. 3
Enunț
a) Subprogramul gaseste_cifra are doi parametri: x, prin care primește un număr natural din intervalul [0, 10⁹], și c, prin care primește o cifră. Subprogramul returnează numărul de apariții ale cifrei c în scrierea numărului x. Scrieți la calculator definiția completă a subprogramului.
Exemplu: pentru x=1323 și c=3, subprogramul returnează 2; pentru x=1323 și c=4, subprogramul returnează 0.
b) Se citește de la tastatură un număr natural nr din intervalul [0, 10⁹]. Se cere scrierea și executarea la calculator a unui program care să calculeze și să scrie, în fișierul control.out, valoarea formată din numărul de apariții ale fiecărei cifre în scrierea numărului nr, folosind apeluri utile ale subprogramului gaseste_cifra, iar pe linia următoare în fișier se va scrie cifra de control a lui nr. Cifra de control este cifra obținută prin însumarea cifrelor numărului și repetarea procedeului pentru suma obținută, până când se obține o singură cifră.
Exemple
| Date de intrare | Date de ieșire (control.out) |
Explicații |
|---|---|---|
23242527 |
411101009 |
Aparițiile cifrelor 0…9 sunt 0 0 4 1 1 1 0 1 0 0, adică numărul 41110100. Suma cifrelor: 27, apoi 2+7 = 9 |
Rezolvare
Exersează mai departe