Jump to content
Main menu
Main menu
move to sidebar
hide
Navigation
Main page
Recent changes
Random page
Help about MediaWiki
Bitnami MediaWiki
Search
Search
Create account
Log in
Personal tools
Create account
Log in
Pages for logged out editors
learn more
Contributions
Talk
Editing
0108 - Aparitii 2
Page
Discussion
English
Read
Edit
Edit source
View history
Tools
Tools
move to sidebar
hide
Actions
Read
Edit
Edit source
View history
General
What links here
Related changes
Special pages
Page information
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
Sursa: [https://www.pbinfo.ro/probleme/108/aparitii2] == Cerinţa == Să se scrie un program care să determine numărul de apariţii ale primei cifre în scrierea unui număr natural citit de la tastatură. == Date de intrare == Programul va citi de la tastatură un număr natural. == Date de ieşire == Programul va afişa pe ecran numărul de apariţii ale primei cifre în scrierea numărului citit. == Restricții și precizări == * numărul citit va fi mai mic decât 2.000.000.000 == Exemplu == ; Intrare : 57051 ; Ieșire : 2 == Rezolvare == === Rezolvare ver. 1 === <syntaxhighlight lang="python" line> def determina_prima_cifra_si_aparitii(numar): """ Determină prima cifră a unui număr și numără aparițiile sale în număr. :param numar: Numărul dat. :return: Un tuplu conținând prima cifră și numărul de apariții ale primei cifre în număr. """ prima_cifra = int(str(numar)[0]) contor = 0 while numar > 0: if numar % 10 == prima_cifra: contor += 1 numar //= 10 return prima_cifra, contor def main(): # Citim numărul natural și validăm intrarea while True: try: numar = int(input("Introduceți un număr natural: ")) if numar <= 0: print("Numărul introdus trebuie să fie un număr natural pozitiv!") continue break except ValueError: print("Nu ați introdus un număr natural pozitiv! Vă rugăm să încercați din nou.") # Determinăm prima cifră și numărul de apariții prima_cifra, numar_aparitii = determina_prima_cifra_si_aparitii(numar) # Afișăm rezultatul print("Datele sunt introduse corect.") print(f"Numărul de apariții ale primei cifre ({prima_cifra}) în numărul dat este: {numar_aparitii}") if __name__ == "__main__": main() </syntaxhighlight> === Rezolvare ver. 2 === <syntaxhighlight lang="python" line> # Citim numărul natural și validăm intrarea while True: try: numar = int(input("Introduceti un numar natural: ")) if numar <= 0: print("Numarul introdus trebuie sa fie un numar natural pozitiv!") continue break except ValueError: print("Nu ati introdus un numar natural pozitiv! Va rugam sa incercati din nou.") # Inițializăm contorul pentru prima cifră a numărului contor = 0 # Determinăm prima cifră a numărului și numărăm câte apariții are în număr prima_cifra = int(str(numar)[0]) while numar > 0: if numar % 10 == prima_cifra: contor += 1 numar //= 10 # Afișăm numărul de apariții ale primei cifre a numărului dat print("Datele sunt introduse corect.") print(f"Numărul de apariții ale primei cifre ({prima_cifra}) în numărul dat este: {contor}") </syntaxhighlight>
Summary:
Please note that all contributions to Bitnami MediaWiki may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see
Bitnami MediaWiki:Copyrights
for details).
Do not submit copyrighted work without permission!
Cancel
Editing help
(opens in new window)
Toggle limited content width