Логическая задача - Prolog (227052)
Формулировка задачи:
Помогите пожалуйста решить !!! Напишите процедуры, вывода максимума и минимума двух чисел
Решение задачи: «Логическая задача»
textual
Листинг программы
clauses min2(A,B,A) :- B>=A. min2(A,B,B) :- A>B. min3(A,B,C,D) :- min2(A,B,AB), min2(AB,C,D). max2(A,B,B) :- B>=A. max2(A,B,A) :- A>B. max3(A,B,C,D) :- max2(A,B,AB), max2(AB,C,D).
Объяснение кода листинга программы
min2(A,B,A) :- B>=A.- эта часть кода говорит о том, что если B больше или равно A, то результатом будет A.min2(A,B,B) :- A>B.- если A больше B, то результатом будет B.min3(A,B,C,D) :- min2(A,B,AB), min2(AB,C,D).- здесь используется рекурсия для нахождения минимального значения между двумя другими значениями.max2(A,B,B) :- B>=A.- если B больше или равно A, то результатом будет B.max2(A,B,A) :- A>B.- если A больше B, то результатом будет A.max3(A,B,C,D) :- max2(A,B,AB), max2(AB,C,D).- аналогично min3, используется рекурсия для нахождения максимального значения между двумя другими значениями.