Определить, сколько отрицательных из трех заданных чисел - Prolog
Формулировка задачи:
Даны три числа a,b,c. Определить сколько из них отрицательных.
Решение задачи: «Определить, сколько отрицательных из трех заданных чисел»
textual
Листинг программы
- domains
- i=integer
- predicates
- neg3(i, i, i, i)
- add_neg(i, i)
- clauses
- neg3(A, B, C, Res) :-
- add_neg(A, AN),
- add_neg(B, BN),
- add_neg(C, CN),
- Res = AN + BN + CN.
- add_neg(N, 1) :-
- N < 0,
- !.
- add_neg(_, 0).
- goal
- neg3(1, -2, -3, Res),
- write(Res), nl.
Объяснение кода листинга программы
- Задана программа на языке Prolog с тремя заданными числами: 1, -2, -3.
- Определены два предиката: neg3 и add_neg.
- Предикат neg3 принимает четыре аргумента типа integer (целое число) и определяет количество отрицательных чисел из заданных четырех.
- Предикат add_neg принимает два аргумента типа integer и определяет, является ли первое число отрицательным, и если да, то увеличивает счетчик на единицу.
- В основной части программы вызывается предикат neg3 с аргументами 1, -2, -3, и результат выводится на экран.
- Значение переменной Res будет равно 3, так как все три числа отрицательные.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д