Задать вопрос
20 ноября, 16:52

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

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.

+3
Ответы (1)
  1. 20 ноября, 17:39
    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 ... ...» по предмету 📗 Информатика. Развернутая система поиска нашего сайта обязательно приведёт вас к нужной информации. Как вариант - оцените ответы на похожие вопросы. Но если вдруг и это не помогло - задавайте свой вопрос знающим оппонентам, которые быстро дадут на него ответ!
Искать готовые ответы
Похожие вопросы по информатике
Как сделать теперь без массива (паскале) ? var nm:array of integer; j, l:integer; begin nm: = new integer[3] (random (20), random (20), random (20)) ; writeln ('nm[0] = ', nm[0]) ; writeln ('nm[1] = ', nm[1]) ; writeln ('nm[2] = ', nm[2]) ;
Ответы (1)
Const n=5; var a:array[1 ... n] of integer; b:array[1 ... 10000] of integer; i, j:integer; begin for i:=1 to n do begin a[i]:=random (100) ; write (a[i]:4) ; end; for i:=1 to n do begin if (i mod 2=1) and (i div i=1) and (i div 1=i) then b[j]:=i;
Ответы (1)
Что не так? (процедура обязательна) procedure random (k:integer) ; var a:array[1 ... 100] of integer; var l:integer; begin for l:=1 to k do begin a[l]:=random (100) ; writeln (a[l]) ; end; end; var v:integer; begin write ('Сколько будет чисел?
Ответы (2)
Файл, полное имя которого было C:/doc/referat. doc, сохранили в подкаталоге txt корневого каталога диска E. Каково полное имя сохранённого файла? а) E:/txt/doc/referat. doc б) E:/doc/txt/referat. doc в) E:/doc/referat. doc д) E:/tht/referat. doc
Ответы (1)
Какие описания массивов являются правильными с точки зрения компилятора языка Pascal? var a1: array[-1000 ... 50] of integer; const m1 = 20; m2 = m1*100; var a6: array[m1 ... m2] of - 200 ... 200; var a2: array[200 ...
Ответы (2)