summaryrefslogtreecommitdiff
path: root/task3.pro
blob: 0f1e5c24ce4a0512fea1077f7cb470c9475a3074 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
% vim:set syntax=prolog:

?- writeln("Задание 1:").

выражение1(X) :-
    X =\= 2, Y is (X*X + 1) / (X - 2), writeln(Y); writeln("Делить на 0 нельзя").

?- выражение1(2).
?- выражение1(5).
?- выражение1(10).
?- выражение1(12.5).


?- nl, nl, writeln("Задание 5:").
в_промежутке(X, A, B) :-
    X >= A, X =< B,
    write("Число "), write(X), write(" попадает в промежуток ["), write(A), write(';'), write(B), write(']'), nl, !;
    write("Число "), write(X), write(" не попадает в промежуток ["), write(A), write(';'), write(B), write(']'), nl.

?- в_промежутке(5, 1, 10).
?- в_промежутке(0, 1, 10).

?- nl, nl, writeln("Задание 7:").
максимум(X, Y, Z, M) :-
    X >= Y, X >= Z, M is X;
    Y >= X, Y >= Z, M is Y;
    Z >= X, Z >= Y, M is Z.

?- максимум(1, 1, 1, M), writeln(M).
?- максимум(1, 2, 3, M), writeln(M).
?- максимум(5, 7, 3, M), writeln(M).
?- максимум(19, 7, 11, M), writeln(M).

?- halt.