Показать сообщение отдельно

  #3033  
Старый 11.03.2009, 14:38
FindeR
Участник форума
Регистрация: 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), будет тебе счастье))
 
Ответить с цитированием