Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 04.11.2016, 08:46   #1
stopping
Новичок
Джуниор
 
Регистрация: 03.11.2016
Сообщений: 2
По умолчанию Индекс находится вне границ массива.

Помогите исправить код, при переходе на каждую процедуру появляется ошибка времени выполнения: индекс находится вне границ массива.



Код:
Var
k,i,j: integer;
A,B: array[1..100] of Integer;
f1, f2: text;

Procedure Input(N:integer);
var i: integer;
Begin
  Reset (f1);
  k:=0;
  while not Eof (f1) do begin
        read (f1,N);
        k:=k+1;
    end;
  close (f1);
  Reset (f1);   
  For i:=1 to k do
  read(f1, a[i]);
  Close (f1);
end;

Procedure DataProcessing(i,j: integer  );
var l:integer;
Begin
 For j:=1 to k do
 Begin
  b[j]:= 0;
  For i:=0 to j do
  Begin
    l:= a[i];
    b[j]:= b[j] + l;
  end;
end;
end;

Procedure Output(i:integer);
Begin
   writeln (f2, 'Оригинальный массив: ');
   for i:=1 to k do write ( f2, a[i], ' ');
   writeln(f2);
   writeln (f2, 'Новый массив: ');
   for i:=1 to k do write (f2, b[j], ' ');
end;

Begin
Assign (f1,'in.txt');
Assign (f2, 'out.txt');

output(a[i]);
DataProcessing(a[i], b[j]);
Rewrite (f2);
Output(a[i]);
close(f2);

End.

Последний раз редактировалось Аватар; 04.11.2016 в 10:03.
stopping вне форума Ответить с цитированием
Старый 04.11.2016, 09:48   #2
Aleksandr H.
2 the Nation Glory
Старожил
 
Аватар для Aleksandr H.
 
Регистрация: 27.05.2014
Сообщений: 3,289
По умолчанию

А если цикл пускать до k-1?
Кто умер, но не забыт, тот бессмертен.
Лао-Цзы.
Aleksandr H. вне форума Ответить с цитированием
Старый 04.11.2016, 10:11   #3
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 19,042
По умолчанию

Этот код не исправлять нужно, а выбросить целиком. Что он вообще должен делать?
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 04.11.2016, 21:34   #4
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,515
По умолчанию

Цитата:
Код:
a: array[1..100]
КАКОЙ индекс будет здесь минимально допустимым ?

Цитата:
Код:
for i:=0 to ...
  l:=a[i];
КАКОЙ индекс здесь будет использован ВНАЧАЛЕ. (в самой первый раз).
программа — запись алгоритма на языке понятном транслятору
evg_m вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
индекс находится вне границ массива (паскаль) max75025 Помощь студентам 5 20.12.2014 08:06
Индекс находился вне границ массива Pikovaya_dama C# (си шарп) 14 02.12.2014 17:13
Индекс находился вне границ массива Pikovaya_dama C# (си шарп) 2 28.11.2014 17:37
Индекс находился вне границ массива. Maks3 C# (си шарп) 3 23.11.2014 21:54
[C#] Индекс находился вне границ массива JonMagon Помощь студентам 12 22.01.2012 23:06