Последовательность чисел Hailstone может быть сгенерирована из начального положительного целого числа, n:
Если n равно 1, последовательность заканчивается. Если n четно, то следующее n последовательности= n/2
Если n нечетно, то следующее n последовательности = (3 * n) + 1
(Неподтвержденная) гипотеза Collatz заключается в том, что последовательность градиентов для любого начального числа всегда заканчивается.
Последовательность градиента также известна как номера градиента (поскольку значения обычно подвержены нескольким спуску и восхождениям, таким как град в облаке) или как последовательность Collatz.
Задача: создать процедуру для генерации последовательности градиента для числа. Используйте процедуру, чтобы показать, что последовательность градиента для числа 27 содержит 112 элементов, начиная с27, 82, 41, 124
и заканчивая 8, 4, 2, 1
Покажите число менее 100 000, которое имеет самую длинную последовательность градиента вместе с этим длина последовательности. (Но не показывайте действительную последовательность!) См. Также: xkcd (humourous). hailstoneSequence
- это функция.
testString: 'assert(typeof hailstoneSequence === "function", "hailstoneSequence
is a function.");'
- text: 'hailstoneSequence()
должен возвращать [[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]]
");'
```