выслал на мыл, но на всякий случай:
N_1 (easy)
Код
program Ivs_from_Geroi;
uses crt;
var
a,c,d:real;
function Size(a1,c1,d1:real):boolean;
var
S1,S2,P1,P2:real;
begin
S1:=sqr(a1); {Площадь квадрата}
S2:=0.5*c1*d1; {Площадь ромба}
P1:=4*a1; {Периметр квадрата}
P2:=4*(0.5*sqrt(sqr(c1)+sqr(d1))); {Периметр ромба (сам выводил, т.к. забыл)}
if ((S1>S2) and (P1>P2)) or ((S2>S1) and (P2>P1)) then Size:=True
else Size:=False;
end;
Begin
ClrScr;
write('Input -A- Square : ');readln(a);
write('Input -C- and -D- Romb: ');readln(c,d); {Вводятся через пробел}
write('Output: ',Size(a,c,d));
readln;
End.
N_2 (easy , но блин с этими массивами в процедурах явно что-то не ладное!)
Код
program Ivs_from_Geroi_2;
uses crt;
const n=20; {Размер массива}
var
a:array[1..n] of integer;
i:integer;
procedure Print(const a1:array of integer;const m:integer); {Передаем в процедуру в качестве формальных параметров констант}
var j:integer;
begin
for j:=1 to m do
if a1[j]<>0 then
begin
writeln('Index not null elements: ',j+1); { ????????? Но так выдает правильно, хотя по идее надо выводить j}
exit;
end;
end;
begin
ClrScr;
for i:=1 to n do
begin
write('a[',i,']= ');
readln(a[i]);
end;
Print(a,n);
readln;
end.