Вывод промежуточного результата - Prolog

Узнай цену своей работы

Формулировка задачи:

Есть код нахождения чисел Фибоначчи. Как сделать так,что бы он выводил полностью список чисел? Например

Решение задачи: «Вывод промежуточного результата»

textual
Листинг программы
fiblist(1):- fib(1,H), writeln(H),!.
fiblist(N):- fib(N,H), N1 is N - 1, fiblist(N1), writeln(H),!.

Объяснение кода листинга программы

  1. fiblist(1):- fib(1,H), writeln(H),! В этом пункте программа вызывает факт fib(1,H), где H является результатом вычисления факториала числа 1. Затем она выводит значение H с помощью функции writeln(H). Знак ! используется для прекращения поиска в момент нахождения решения.
  2. fiblist(N):- fib(N,H), N1 is N - 1, fiblist(N1), writeln(H),! Этот пункт похож на первый, но вместо этого он вызывает факт fib(N,H), где H является результатом вычисления факториала числа N. Затем он вычисляет новое значение N1, которое равно N - 1, и вызывает fiblist(N1), чтобы продолжить рекурсивный процесс. После этого он выводит значение H с помощью функции writeln(H). Знак ! используется для прекращения поиска в момент нахождения решения. В этом коде используется рекурсивная функция для вычисления факториала числа. Код продолжает вызывать себя, пока не достигнет базового случая (когда N равно 1), и затем он выводит результат каждого шага вычисления факториала.

Оцени полезность:

11   голосов , оценка 4.091 из 5
Похожие ответы