Задать вопрос
31 марта, 06:19

Ошибка времени выполнения: Индекс находился вне границ массива ... чтто не так?

const n=30;

var i, j, p, q:integer;

c:array[1 ... n, 1 ... n+1] of integer;

a:array[1 ... n+1] of integer;

b:array[1 ... n+1] of integer;

begin

readln (q, p) ;

For i:=1 to n do

For j:=1 to n+1 do

c[i, j]:=random (28) + 1;

begin

for i:=1 to n+1 do

p:=random (28) + 1;

end;

for j:=1 to n+1 do

begin

q:=random (28) + 1;

end;

for i:=n downto p do / / вставка p

for j:=1 to n+1 do//

c[i+1, j]:=c[i, j]; //

for j:=1 to n+1 do c[p, j]:=a[i];

for j:=n+1 downto q do

for i:=1 to N+1 do

c[i, j+1]:=c[i, j];

for i:=1 to n+1 do c[i, q]:=b[i];

for i:=1 to n+1 do begin

for j:=1 to n+1 do

write (c[i, j]:2) ;

writeln; //

end;

end.

+2
Ответы (1)
  1. 31 марта, 09:29
    0
    Обратите внимание на цикл

    for i:=n downto p do / / вставка p

    for j:=1 to n+1 do

    c[i+1, j]:=c[i, j];

    У Вас массив с описан как c:array[1 ... n, 1 ... n+1] of integer;

    В то же время, первый индекс у Вас в цикле меняется от n+1 до p+1 (n+1 выходит за границу), а второй - от 1 до n+1 (это допустимо)
Знаете ответ на вопрос?
Не уверены в ответе?
Правильный ответ на вопрос 👍 «Ошибка времени выполнения: Индекс находился вне границ массива ... чтто не так? const n=30; var i, j, p, q:integer; c:array[1 ... n, 1 ... ...» по предмету 📗 Информатика. Развернутая система поиска нашего сайта обязательно приведёт вас к нужной информации. Как вариант - оцените ответы на похожие вопросы. Но если вдруг и это не помогло - задавайте свой вопрос знающим оппонентам, которые быстро дадут на него ответ!
Искать готовые ответы