Так как язык не указан, приведу пример на SWI-Prolog.
Код:
read_int(Int) :- read(Int), integer(Int).split_int_by_numbers(0, []) :- !.split_int_by_numbers(N, [Number|Ints]) :- Number is mod(N, 10), RestN is div(N, 10), split_int_by_numbers(RestN, Ints).test_to_div(_, []).test_to_div(N, [Number|Ints]) :- mod(N, Number) =:= 0, test_to_div(N, Ints). test(Int) :- split_int_by_numbers(Int, Numbers), test_to_div(Int, Numbers), write(Int), write(" - Yes!"), nl.test(Int) :- write(Int), write(" - No!"), nl.?- read_int(Int), test(Int).
Program tt;
var A,B,C,D: Real;
begin
Writeln ('Введите массу воды в граммах.'); Readln(A);
Writeln ('Введите массу соли в граммах.'); Readln(B);
D := B+A;
C := B/A;
Writeln ('Массовая доля соли в раствворе - ',C,'.');
End.
2.
Program tt;
var A,B,PL,Per: Real;
begin
Writeln ('Введите длинну первого катета.'); Readln(A);
Writeln ('Введите длинну второго катета.'); Readln(B);
PL := (B*A)/2;
PER := sqrt(B*B+A*A)+A+B;
Writeln ('Площадь - ',PL,'.');
Writeln ('Периметр - ',PER,'.');
End.