Показать сообщение отдельно
  #3  
Старый 08.04.2008, 17:17
MegaPiha MegaPiha вне форума
Активный
 
Регистрация: 24.03.2008
Сообщения: 227
Версия Delphi: Delphi 7
Репутация: 30
По умолчанию

Цитата:
Сообщение от Регина
Все никак не могу решить эту задачку: ввести многомерный массив. Пронормировать ее, то есть каждый элемент введенного массива разделитьна максимальный элемент. Вывести на экран исходную и преобразованную матрицу. Вывести на экран номер строки и столбца максимального элемента.
своей проге использую 2 StrinGrida, и два Edita для вывода номера строки и столбца. Туда все выводится, но неправильно. Помогите пожалуйста девушке, кто чем может!!!! Мозги уже кипят, еще курсовик переди.

Код:
const n = 4;
var
  Form1: TForm1;
  C: array [1..n,1..n] of real;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
Var i,j:integer;
begin
   Randomize;
   For j:=1 to n do
   for i := 1 to n do
   begin
      C[i,j]:=Random(500);
   end;
   with StringGrid1 do
   begin
      ColCount:=n+1;
      RowCount:=n+1;
      For j:=1 to n do
      for i := 1 to n do
      begin
          Cells[i,j] := FloatToStr(c[i,j]);
      end;
   end;
end;

procedure TForm1.Button1Click(Sender: TObject);
var j,i, NumStr, NumCol :integer;
    max:real;
begin
  max:=0;
  NumStr:=0;
  NumCol:=0;
  for i:=1 to n do
    for j:=1 to n do
    begin
       if  c[i,j]>max then
       begin
           max:=c[i,j];
           NumStr:=j;
           Numcol:=i;
       end;
    end;
    label1.Caption:=FloatToStr(max);
    for i:=1 to n do
    for j:=1 to n do
       c[i,j]:=c[i,j]/max;

  with StringGrid2 do
  begin
      For i:=1 to n do
      for j:=1 to n do
      begin

           Cells[i,j] := FormatFloat('0.00',c[i,j]);
      end;
  end;

  label1.Caption:=FloatToStr(max);
  label2.Caption:=IntToStr(NumStr);
  label3.Caption:=IntToStr(NumCol);
 end;
end.

Только элементы массива заполняются, через random. Лень было заполнять вручную. Думаю переделать сможете.
Вообще Yurk@ правильно говорит.. надо наработки выкладывать.
Ответить с цитированием