A sequência de números Hailstone pode ser gerada a partir de um inteiro positivo inicial, n por:
Se n é 1, a sequência termina. Se n é par, então o próximo n da sequência= n/2
Se n é ímpar, então o próximo n da sequência = (3 * n) + 1
A conjectura de Collatz (não comprovada) é que a sequência do granizo para qualquer número inicial sempre termina.
A sequência do granizo é também conhecida como números de granizo (porque os valores geralmente estão sujeitos a múltiplas descidas e subidas como granizo em uma nuvem), ou como a sequência Collatz.
Tarefa: Crie uma rotina para gerar a seqüência de granizo para um número. Use a rotina para mostrar que a sequência do granizo para o número 27 tem 112 elementos começando com27, 82, 41, 124
e terminando com 8, 4, 2, 1
Mostre o número menor que 100.000 que tem a maior sequência de granizo junto com aquela comprimento da sequência. (Mas não mostre a seqüência real!) Veja também: xkcd (humourous). hailstoneSequence
é uma função.
testString: 'assert(typeof hailstoneSequence === "function", "hailstoneSequence
is a function.");'
- text: 'hailstoneSequence()
deve retornar [[27,82,41,124,8,4,2,1], [351, 77031]]
'
testString: 'assert.deepEqual(hailstoneSequence(), res, "hailstoneSequence()
should return [[27,82,41,124,8,4,2,1], [351, 77031]]
");'
```