0023 - Oglindit
Cerinţa
Să se scrie o funcție Python care să determine oglinditul unui număr natural transmis ca parametru. Funcția va întoarce rezultatul prin intermediul unui parametru de ieşire.
Restricţii şi precizări
- Numele funcției va fi oglindit
- Funcția va avea doi parametri: primul parametru reprezintă numărul pentru care se calculează oglinditul, iar la doilea parametru reprezintă valoarea calculată
- Numărul pentru care se calculează oglinditul va fi mai mic decât 1.000.000.000
Important
Soluţia propusă va conţine doar definiţia funcţiei cerute. Prezenţa în soluţie a altor instrucţiuni poate duce erori de compilare sau de execuţie care vor avea ca efect depunctarea soluţiei.
Rezolvare
Rezolvare ver. 1
<syntaxhighlight lang="python" line="1" start="1">
def oglindit(nr, oglindit_nr):
"""Calculează oglinditul unui număr natural transmis ca parametru."""
if nr >= 1000000000:
raise ValueError("Numărul trebuie să fie mai mic decât 1.000.000.000")
oglindit_nr = 0 # inițializăm oglinditul cu valoarea 0
while nr > 0:
oglindit_nr = oglindit_nr * 10 + nr % 10
nr = nr // 10
return oglindit_nr
if __name__ == '__main__':
nr = 12345
oglindit_nr = 0
print(f"Oglinditul lui {nr} este {oglindit(nr, oglindit_nr)}")
</syntaxhighlight>