Сложности с Prolog
Формулировка задачи:
Задание:
Написать в Turbo Prolog программу, которая будет искать значение Z по введённым с клавиатуры значениям X и Y, при этом в зависимости от значения X должно происходить разветвление программы. Например, при X < 0, Z = X + Y, а при X >= 0, Z = X*Y.
Всё работает, но почему-то турбо пролог просит ввести первое и второе значение (X и Y соответственно) дважды при условии, если это положительные числа (на самом деле понятно почему просит, но как этого избежать?). Я перепробовал по-разному, в прологе всего несколько дней, пока не знаю всех тонкостей. Уже пару часов пока ничего работающего на ум не приходит.
Решение задачи: «Сложности с Prolog»
textual
Листинг программы
find(X, Y, Z) :- X<0, Z=X+Y, write(X, "+", Y, "=", Z), nl. find(X, Y, Z) :- X>=0, Z=X*Y, write(X, "*", Y, "=", Z), nl. goal enter(X, Y), find(X, Y, Z).
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д