Дан одномерный целочисленный массив. Составить программу для решения следующих задач, используя сначала процедуры (функции) с циклами, а затем рекурсивные процедуры (функции):
Найти сумму элементов массива, являющихся точными квадратами
Не могу найти ошибку из-за которой ничего не выводит
Код:
uses
SysUtils;
type mas=array[1..10] of integer;
procedure Vvod(var m:mas);
var i:integer;
begin
for i:=1 to 10 do
begin
write('m[',i,']=');
readln(m[i]);
end;
end;
procedure vivod(m:mas);
var i: integer;
begin
for i:=1 to 10 do
write(m[i],' ');
end;
procedure su1(m:mas;var s1:integer);
var i,n:integer;
begin
s1:=0;
for i:=1 to 100 do
begin
for n:=1 to 100 do
begin
if m[i]=sqr(n) then s1:=s1+m[i];
end;
end;
end;
procedure su2(m:mas;var s2:integer);
var i,k:integer;
begin
s2:=0;
if i>0 then
begin
if m[i]=sqr(k) then s2:=s2+m[i];
end;
su2(m,s2);
readln;
end;
var i,s1,s2:integer;
m:mas;
begin
Vvod(m);
vivod(m);
su1(m,s1);
su2(m,s2);
writeln(s1);
writeln(s2);
readln;
end.
lmikle: пользуемся тегами!!!