Sigui n qualsevol natural estrictament
positiu. Considereu el procés següent: Si n és parell, dividiu-lo per
dos. Altrament, multipliqueu-lo per 3 i sumeu-li 1. Quan arribeu a 1,
pareu.
Per exemple, començant en n=3, s’obté
la seqüència de Collatz S(3): 3,10,5,16,8,4,2,1. La mida d’aquesta
seqüència és 7, ja que han calgut 7 iteracions del procés descrit més
amunt per arribar fins a 1.
Des de l’any 1937 es conjectura que aquest procés acaba per a
qualsevol n inicial, encara que no ho ha
sabut demostrar ningú. En aquest problema suposarem que la conjectura és
certa.
Escriu una funció mida_collatz(n) que,
donat un natural n > 0, retorni la mida
de la seqüència de Collatz corresponent a
n, és a dir, quantes iteracions del procés
descrit més amunt calen per arribar a 1.
La funció té un nombre natural estrictament positiu com a paràmetre.
Un cop definida la funció, en provar-la al REPL de Python us hauria de sortir el mateix que podeu observar més avall.
Autoria: Jordi Delgado, José Luis Balcázar.
Generació: 2026-01-25T15:51:13.948Z
© Jutge.org, 2006–2026.
https://jutge.org