Рассмотрим три последовательности чисел A, Bи C:
A: Последовательность, основанная на рекуррентных отношенияхf(n) = f(n-1)+f(n-2), начиная сf(1) = 3, f(2) = 4. Итак, последовательность начинается так:3 4 7 11 18 29 47 76 ...B: Составные числа , то есть все целые числа, которые не являются простыми числами (или 1):4 6 8 9 10 12 14 15 16 ...CЦифры Пи:3 1 4 1 5 9 2 6 5 ...
Если задано положительное целое число в N < 50качестве аргумента функции или STDIN, вернуть десятичное значение дроби A(N)/B(N)с C(N)цифрами после десятичной точки. Применяются обычные правила округления (округление в большую сторону, если цифра N + 1 - 5 или выше). Если N-ая цифра piравна нулю, должно быть напечатано целое число. научная нотация / Стандартная форма принимается для номеров выше 1000.
Это код гольфа, поэтому выигрывает самый короткий ответ в байтах.
Несколько примеров:
N = 1: 0.750
N = 2: 0.7
N = 3: 0.8750
N = 4: 1.2
N = 6: 2.416666667
N = 10: 11.056
N = 20: 764.8750
Конечно, применяются стандартные правила игры в гольф.
Функция должна завершиться менее чем за две минуты на любом современном ноутбуке.
N? Если так, то до N = 49. Или что-то еще?
C(n)цифры, мы должны включить конечные 0?