|
Участник форума
Регистрация: 15.11.2006
Сообщений: 259
С нами:
10255414
Репутация:
151
|
|
Сообщение от cremator (c)
.....Я так понял?//
PS не знал что в 1м классе уже паскаль проходят/// х(
И чё за чушь ты написал?
lll6, интересная, конечно, задача. Но нудноватая)) Если пишешь на дельфи, то кинь на форму edit, button и StrinGgrid. Если на паскале, просто бери readln'ом размерность массива, а вместо StringGrid1.Cells[....] пиши нужный тебе массив и нужный элемент массива.
Код:
procedure TForm1.Button1Click(Sender: TObject);
var mas: array of integer;
n,i,s,q,buf,buf2,number:integer;
begin
Setlength(mas,StrToInt(Edit1.text)); //задаём размер массива
stringgrid1.ColCount :=length(mas)+1; //размеры StringGrid
stringgrid1.RowCount := length(mas)+1;
number := 0;
for n:=1 to length(mas) do begin
i:=n;
for s:=1 to n do begin
number := number+1;
stringgrid1.Cells[s,i]:=IntToStr(number);
i:=i-1;
end;
end;
i:=length(mas);
for s:=2 to length(mas) do begin
number := number+1;
buf:=s;buf2:=i;
stringgrid1.Cells[s,i]:=IntToStr(number);;
i:=i-1;
end;
for s:=3 to length(mas) do begin
buf2:=s-1;
for n:=length(mas) downto s do begin
number := number+1;
buf2:=buf2+1;
stringgrid1.Cells[n,buf2]:=IntToStr(number);;
end;
end;
end;
Ну а дальше вписывай в Edit нужную размерность и тыкай кнопку. Немного не такая последовательность, как ты просил, но переделать, думаю, труда не составит.
Код:
[1,1], [1,2], [2,1], [3,1], [2,2], [1,3], [1,4], [2,3], [3,2], [4,1], [4,2], [3,3], [2,4], [3,4], [4,3], [4,4]
Улови тут последовательность (для матрицы 4х4), будет тебе счастье))
|