Вверх ↑
Ответов: 80
Рейтинг: 4
#1: 2013-06-10 17:42:09 ЛС | профиль | цитата
Меня долго не было. Сегодня вот сел переписывать программу и буквально на лету исправил все недоработки. Основная проблема теперь в процессе компиляции и
Ошибка времени выполнения: Ссылка на объект не указывает на экземпляр объекта.
#pas
var

x,y: array [1..10000] of integer;
m,k,Xmax,Ymax:integer;
ring,rings,L:byte;

begin

read(rings);//считываем количество кольц
readln(L);//коэффицент увеличения, принадлежит натуральным числам

for ring:=1 to rings do //проход по кольцам
begin
m:=1;k:=3*ring*ring-3*ring; //сумма глобальных номеров до кольца

while (m<=(2*ring+1)) do

begin
if (m<=(ring+1)) then

begin
y[k+m]:=-1*25*L*ring;
x[k+m]:=L*(14*ring+28*(1-m);
y[k+3*ring+m]:=-y[k+m];
x[k+3*ring+m]:=-x[k+m];
end

else

begin
y[k+m]:=25*L*((-2)*ring+m-1);
x[k+m]:=L*14*(1-m));
y[k+3*ring+m]:=-y[k+m];
x[k+3*ring+m]:=-x[k+m];
y[k+4*ring-m+2]:=-y[k+m];
x[k+4*ring-m+2]:=x[k+m];
y[k+7*ring-m+2]:=y[k+m];
x[k+7*ring-m+2]:=-x[k+m];
end;
m:=m+1;
end;
end;

k:=3*rings*(1+rings);
Xmax:=(27*rings+13)*L+15;
Ymax:=(24*rings+15)*L+15;

for m:=1 to k do
begin
writeln(x[m]+Xmax);
writeln(y[m]+Ymax);
end;
end.

Помогите исправить ошибку + перенести программу в хиазм, как код.

>Вылечилось заданием границ массива! А динамически его нельзя никак задавать?
>>Перенесите в хиазм в виде кода вставки, пожалуйста.
------------ Дoбавленo в 17.42:
Неужели никто не поможет оформить в Inline Cod?
карма: 0

0
файлы: 1code_31203.txt [1KB] [290]