![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Назовем допустимым преобразованием матрицы перестановку двух строк или двух столбцов. Для действительной квадратной матрицы порядка n с помощью допустимых преобразований добиться того, чтобы элемент мат-рицы с наименьшим по модулю значением располагался в нижнем правом углу матрицы. Исходную матрицу вводить с клавиатуры...
пожалуйста помогите кто нить... и если можно с пояснением...За ранее благодарю... ![]() |
#2
|
||||
|
||||
![]() 1) пробегаешься по матрице. Ищешь минимальный по модулю элемент. Сохраняешь его строку и столбец (назовем их соответственно k и m).
2) меняешь строку k с последней, потом столбец m с последним. 3) радуешься результату jmp $ ; Happy End! The Cake Is A Lie. |
#3
|
|||
|
|||
![]() А программу не сможеш?
|
#4
|
|||
|
|||
![]() Код:
program Project2; {$APPTYPE CONSOLE} uses SysUtils; var i,j,i1,j1,n: integer; a: array of array of real; b: array of real; min:real; begin write('n='); read(n); setLength(a,n,n); setLength(b,n); for i:=0 to n-1 do for j:=0 to n-1 do begin write('a[',i,',',j,']'); read(a[i,j]); end; min:=abs(a[0,0]); for i:=0 to n-1 do for j:=0 to n-1 do begin if min>abs(a[i,j]) then begin min:=abs(a[i,j]); i1:=i; j1:=j; end; end; for i:=0 to n-1 do begin b[i]:=a[i1,i]; a[i1,i]:=a[n-1,i]; a[n-1,i]:=b[i]; end; for i:=0 to n-1 do begin b[i]:=a[i,j1]; a[i,j1]:=a[i,n-1]; a[i,n-1]:=b[i]; end; for i:=0 to n-1 do begin for j:=0 to n-1 do write(a[i,j]:6:2,' '); writeln; end; readln; readln; readln; { TODO -oUser -cConsole Main : Insert code here } end. Последний раз редактировалось stil, 20.12.2010 в 18:36. |
#5
|
|||
|
|||
![]() Дружище а можеш через форму??? пожалуйста... сроки поджимают просто... если сможеш буду благодарен
|
#6
|
|||
|
|||
![]() Код:
{размерность массива} procedure TForm1.Button1Click(Sender: TObject); begin StringGrid1.ColCount:=StrToInt(edit1.text); StringGrid1.RowCount:=StrToInt(edit1.text); end; {перестановка} procedure TForm1.Button2Click(Sender: TObject); var i,j,i1,j1,n: integer; b: array of real; min:real; begin n:=StringGrid1.ColCount; setLength(b,n); min:=abs(StrToFloat(StringGrid1.cells[0,0])); for i:=0 to StringGrid1.ColCount-1 do for j:=0 to StringGrid1.RowCount-1 do begin if min>abs(StrToFloat(StringGrid1.cells[i,j])) then begin min:=abs(StrToFloat(StringGrid1.cells[i,j])); i1:=i; j1:=j; end; end; for i:=0 to n-1 do begin b[i]:=StrToFloat(StringGrid1.cells[i1,i]); StringGrid1.cells[i1,i]:=StringGrid1.cells[n-1,i]; StringGrid1.cells[n-1,i]:=FloatToStr(b[i]); end; for i:=0 to n-1 do begin b[i]:=StrToFloat(StringGrid1.cells[i,j1]); StringGrid1.cells[i,j1]:=StringGrid1.cells[i,n-1]; StringGrid1.cells[i,n-1]:=FloatToStr(b[i]); end; end; |
#7
|
|||
|
|||
![]() procedure TForm1.Button1Click(Sender: TObject);
ошибка вот тут [Error] Project2.dpr(7): ';' expected but '.' found такая |