Автор: Legolas 7.06.2006 10:58
Ребята, помогите плиз Нужно отразить нессимметричную матрицу относительно побочной диагонали. Мне помогли сделать отражение относительно главной диагонали, а вот с отражением отн. побочной я застрял. Может кто поможет? Вот примерный код отражения отн. глав. диаг.:
Код
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Grids, StdCtrls; type TForm1 = class(TForm) SG: TStringGrid; Button1: TButton; Button2: TButton; procedure FormCreate(Sender: TObject); procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.FormCreate(Sender: TObject); {VAR I:INTEGER; } begin {FOR I:=0 TO 4 DO SG.CELLS[0,I]:=INTTOSTR(I+1); } //SG.Cols[0].LoadFromFile('W:\íîìåð.txt'); end; procedure TForm1.Button1Click(Sender: TObject); var a,i,j:integer; begin a:=3; for i:=0 to 4 do for j:=1 to 5 do begin sg.Cells[j,i]:=inttostr(a+random(5)+1); a:=strtoint(sg.cells[j,i]); end; end; // Процедура отражения отн. главн диаг. procedure TForm1.Button2Click(Sender: TObject); var i,j:integer; b:string; begin for i:=0 to 4 do for j:=i+2 to 5 do begin b:=sg.cells[j,i]; sg.Cells[j,i]:=sg.cells[i+1,j-1]; sg.cells[i+1,j-1]:=b; end; end; end.
Также высылаю архив с прогой.
Прикрепленные файлы
inver.rar ( 2.67 килобайт )
Кол-во скачиваний: 225
Автор: мисс_граффити 8.06.2006 21:15
а какая разница, относительно чего отображать? только индексы другие будут...
Автор: -Legolas- 9.06.2006 4:41
Дело в том, что я не могу отобразить элементы матрицы относительно побочной диагонали. Надеюсь на вашу помощь...
Автор: volvo 9.06.2006 4:57
for i := 1 to n - 1 do for j := 1 to n - i do begin T := a[i, j]; a[i, j] := a[n - j + 1, n - i + 1]; a[n - j + 1, n - i + 1] := T end;
Автор: klem4 9.06.2006 12:05
Legolas, в следующий раз пользуйся поиском ... http://forum.pascal.net.ru/index.php?s=&showtopic=3434&view=findpost&p=30894