Algoritmická úlohaJednoduchá20 XPÚloha 8/9

Collatzova postupnosť

Zadanie

Collatzova postupnosť začína kladným celým číslom n. Ak je číslo párne, ďalšie je jeho polovica; ak je nepárne, ďalšie je 3 * n + 1. Postupnosť končí, keď dosiahne 1.

Program načíta n, vypíše celú postupnosť (od n po 1) a potom počet krokov, ktoré boli potrebné na dosiahnutie jednotky. Čísla môžeš oddeliť medzerou alebo ich vypísať na samostatné riadky.

Čo má program robiť

Pre 6: 6 3 10 5 16 8 4 2 1 a 8 krokov.

Príklady

  • Vstup

    6

    Očakávaný výstup

    6 3 10 5 16 8 4 2 1
    8

Pravidlá

  • V tejto lekcii použi cyklus while.

Po odoslaní riešenie overia ešte 3 skryté testy: n = 1, n = 7, n = 27 (111 krokov).

Python sa spustí pri prvom spustení kódu.

Ctrl+Enter spustí program. Tab odsadí riadok. Esc a potom Tab opustí editor.

Vstup (stdin)

Každý riadok = jedno volanie input().

Výstup

Nápovedy

Najprv to skús sám. Každá nápoveda prezradí o niečo viac - a trochu zníži odmenu.

Bez prihlásenia sú nápovedy zadarmo - ale ani XP sa neudeľujú.

Riešenie

Riešenie sa odomkne po poslednej nápovede.