While24. Дано целое число $$N$$ ($$> 1$$). Последовательность чисел Фибоначчи $$F_K$$ определяется следующим образом: $$F_1 = 1, F_2 = 1,F_K = F_{K-2} + F_{K-1}, K = 3, 4, …$$ . Проверить, является ли число $$N$$ числом Фибоначчи. Если является, то вывести True, если нет — вывести False.
Решение:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
program While24; var N,F,F1,F2 :Integer; begin Write('Введите число N: '); Readln(N); F1:=1; F2:=1; F:=0; while F < N do begin F:=F2+F1; F2:=F1; F1:=F; end; Writeln(F=N); end. |
Решение 2:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
program While24; var N,F1,F2 :Integer; begin Write('Введите число N: '); Readln(N); F1:=1; F2:=1; while (f1<n) do begin f2:=f1+f2; f1:=f2-f1; end; write(f1=n); end. |
Другие задачи из раздела While можно посмотреть здесь.
Тоже самое без доп.переменной
добавил.
как решать задачи на вашем сайте?