Так как язык не указан, приведу пример на 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).
var f:text; a:array[1..7] of real; i,k,c,x:integer; s:string;
begin
for i:=1 to 7 do
begin
readln(x);
a[i]:=x;
end;
assign(f,'file.txt');
rewrite(f);
for i:=1 to 7 do
begin
str(a[i],s);
writeln(f,s);
end;
close(f);
reset(f);
k:=0;
while not eof(f) do
begin
readln(f,s);
val(s,x,c);
if x<0 then k:=k+1;
end;
close(f);
if k<>0 then writeln('В массиве ',k,' отрицательных элемента(ов)');
else writeln('В массиве нет отрицательных элементов');
erase(f);
end.
2)
Var a,b,c,d:integer;
Function max(a,b:integer):integer;
begin
if a>b then max:=a
else max:=b;
end;
Begin
readln(a,b,c,d);
a:=(max(a,b));
b:=(max(c,d));
writeln('max=',max(a,b));
End.