1862 - CntCifKRec

From Bitnami MediaWiki
Revision as of 16:07, 21 March 2023 by Cata (talk | contribs) (Pagină nouă: == Cerinţa == Să se scrie o funcție Python recursivă cu trei parametri n, k, c și întoarce prin parametrul c numărul de cifre ale lui n care sunt mai mari sau egale decât k. == Restricţii şi precizări == * Numele funcției va fi cnt_cif * Funcția va avea trei parametri: n, k, c, cu semnificația de mai sus * 0 ≤ n ≤ 2.000.000.000 * 0 ≤ k ≤ 9 == Exemplu == După apelul cnt_cif(2750, 4, c), valoarea lui c va fi 2. == Important == Soluţia propusă va conţ...)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Cerinţa

Să se scrie o funcție Python recursivă cu trei parametri n, k, c și întoarce prin parametrul c numărul de cifre ale lui n care sunt mai mari sau egale decât k.

Restricţii şi precizări

  • Numele funcției va fi cnt_cif
  • Funcția va avea trei parametri: n, k, c, cu semnificația de mai sus
  • 0 ≤ n ≤ 2.000.000.000
  • 0 ≤ k ≤ 9

Exemplu

După apelul cnt_cif(2750, 4, c), valoarea lui c va fi 2.

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

<syntaxhighlight lang="python"> def cnt_cif(n, k, c):

   if n < 9:
       if n >= k:
           c[0] += 1
   else:
       cnt_cif(n // 10, k, c)
       if n % 10 >= k:
           c[0] += 1

</syntaxhighlight>