0909 - PermCircCif: Difference between revisions
Vardai Erwin (talk | contribs) |
Vardai Erwin (talk | contribs) No edit summary |
||
Line 8: | Line 8: | ||
*parametrul '''n''' va fi un număr natural nenul mai mic decât '''1.000.000.000''' | *parametrul '''n''' va fi un număr natural nenul mai mic decât '''1.000.000.000''' | ||
==Date de intrare== | |||
Introduceți numărul '''n'''. | |||
==Date de ieșire== | |||
Dacă datele sunt corecte, apare textul '''"Datele sunt corecte."''' și se returnează valoarea corectă. Dacă datele sunt incorecte, apare mesajul '''"Datele nu corespund restricțiilor impuse."'''. | |||
==Exemplu== | ==Exemplu== | ||
===Exemplul 1=== | ===Exemplul 1=== | ||
Line 35: | Line 41: | ||
if 1 <= n < 1000000000: | if 1 <= n < 1000000000: | ||
print("Datele sunt corecte.") | print("Datele sunt corecte.") | ||
perm(n) | |||
else: | else: | ||
print("Datele nu corespunc restricțiilor impuse.") | print("Datele nu corespunc restricțiilor impuse.") | ||
</syntaxhighlight> | </syntaxhighlight> |
Revision as of 12:57, 27 March 2023
Cerință
Să se scrie o funcție Python care să realizează permutarea circulară spre stânga a cifrelor unui număr natural. Numărul este transmis prin intermediul unui parametru care se întoarce din funcție modificat.
Restricții de precizări
- numele funcției va fi perm
- funcția va avea un singur parametru, n
- parametrul n va fi un număr natural nenul mai mic decât 1.000.000.000
Date de intrare
Introduceți numărul n.
Date de ieșire
Dacă datele sunt corecte, apare textul "Datele sunt corecte." și se returnează valoarea corectă. Dacă datele sunt incorecte, apare mesajul "Datele nu corespund restricțiilor impuse.".
Exemplu
Exemplul 1
- Dacă n = 1372, după apelul funcției perm, valoarea lui n va fi 3721.
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 perm(n):
if n < 10: return n
cifre = [int(digit) for digit in str(n)] cifre.append(cifre.pop(0))
return int(.join(map(str, cifre)))
if __name__ == '__main__':
n = int(input()) if 1 <= n < 1000000000: print("Datele sunt corecte.") perm(n) else: print("Datele nu corespunc restricțiilor impuse.")
</syntaxhighlight>