Определить минимум из двух чисел - Prolog

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

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

Пытаюсь написать консольную программу на SWI Prolog. Прогармма должна читать с консоли два числа, а затем вывести минимальное из них. Я делаю это так:
Листинг программы
  1. mymin([A|B], MIN) :- MIN is min(A,B).
  2. main :-
  3. readln(X),
  4. readln(Y),
  5. append(X,Y,Z),
  6. mymin(Z, MIN),
  7. write(MIN),
  8. nl.
Но это работает только для положительных целых чисел. Не могу разобраться, как сделать, чтобы работало и с отрицательными и с вещественными тоже. Помогите разобраться. В случае отрицательных там в список попадает два элемента - "-" и число как два элемента списка.

Решение задачи: «Определить минимум из двух чисел»

textual
Листинг программы
  1. predicates
  2. min(integer,integer,integer)
  3. task
  4.  
  5. clauses
  6. min(A,B,A) :- A<=B.
  7. min(A,B,B) :- A>B.
  8.  
  9. task :- write("x="), readint(X), write("y="),readint(Y), min(X,Y,Z), write("min="),write(Z),nl.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

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

15   голосов , оценка 4.133 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы