Ты объявила массив от 1 до 10, а в конце в цикле пытаешься обратиться к элементу с индексом 0!
(for i:=0 to m do
<span>begin for j:=0 to n do)
Ну и куча мелких недочетов еще тут есть
const
n=5;
m=6;
var
a:array[1..n,1..m] of integer;
i,j: integer;
begin
writeln('Исходный массив:');
for i:=1 to n do
begin
for j:=1 to m do
begin
a[i,j]:=random(10);
write(a[i,j]:4);
end;
writeln;
end;
writeln('Измененный массив:');
for i:=1 to n do
begin
for j:=1 to m do
begin
if a[i,j]=0 then a[i,j]:=i+j;
write(a[i,j]:4);
end;
writeln;
end;
<span>end.</span></span>
3е..............................................
<h3>Алгоритм решения</h3>
Для каждого из пяти чисел:
Пока число больше нуля, увеличиваем счётчик количества цифр на 1 и прибавляем последнюю цифру к счётчику суммы.
Необходимо учесть, что для K=0 количество цифр C=1.
<h3>Код (Pascal)</h3>
var
x, i, anc, ans: integer;
procedure Sum(k: integer; var c, s: integer);
begin
c := 0;
if k = 0 then c := 1;
s := 0;
while (k > 0) do
begin
c := c + 1;
s := s + (k mod 10);
k := k div 10;
end
end;
begin
for i := 1 to 5 do
begin
read(x);
Sum(x, anc, ans);
writeln(anc, ' ', ans);
end;
end.
-------------------------------------------------
Файл решения прикреплён.
По горизонтали сверху вниз
по вертикали уже понятно)