Показать сообщение отдельно
  (#1 (permalink)) Старый
Dark Fox Dark Fox вне форума
Новичок
 
Сообщений: 1
Сказал(а) спасибо: 1
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 11.09.2018
По умолчанию Квадратные корни (Visual Prolog 8) - 11.09.2018, 17:21

Недавно начал изучать вижуал пролог и столкнулся с проблемой. Мне необходимо найти квадратные корни по вводимым данным и вроде бы я всё сделал правильно, однако при экзекуции компилятор ругается на неравенство D<0. И выдаёт ошибку: The predicate 'main::run/0', which is declared as 'procedure', is actually 'determ'. Подскажите пожалуйста в чём ошибка.

prolog Код:
run() :-
        A = read(),
        B = read(),
        C = read(),
        D = B ^ 2 - 4 * A * C,
        (D > 0 and ! and X1 = (-B + D ^ 0.5) / (2 * A) and X2 = (-B - D ^ 0.5) / (2 * A) and writef("X1=%, X2=%", X1, X2) and clearInput
            and _ = readchar()
            or D = 0 and ! and X = -B / (2 * A) and writef("X=%", X) and clearInput and _ = readchar()
            or D < 0 and writef("X1=(-% + %i)/(2*%), ", B, -D ^ 0.5, A) and writef("X1=(-% - %i)/(2*%)", B, -D ^ 0.5, A) and clearInput
            and _ = readchar()).
Ответить с цитированием
Ads