0909 - PermCircCif

From Bitnami MediaWiki
Revision as of 14:01, 25 March 2023 by Cuceu Andrei (talk | contribs) (Pagină nouă: ==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''' ==Exemplu== ===Exemplul 1=== ; Dacă '''n = 1372...)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

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

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__':

   while True:
       try:
           n = int(input())
           if n < 1 or n >= 1000000000:
               continue
           break
       except ValueError:
           continue
   
   print(perm(n))


</syntaxhighlight>