Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
18
Добавлен:
26.05.2014
Размер:
2 Кб
Скачать
☆
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls, Grids;

type
  TForm1 = class(TForm)
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Edit1: TEdit;
    Label5: TLabel;
    Edit2: TEdit;
    Label6: TLabel;
    Edit3: TEdit;
    Label7: TLabel;
    StringGrid1: TStringGrid;
    Button1: TButton;
    Button2: TButton;
    Label8: TLabel;
    Label9: TLabel;
    Label10: TLabel;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.DFM}

//Функция выделения подстроки из строки
function GetSubStr(st:string;n:integer):string;
 var i,p:integer;
 begin for i:=1 to n-1 do
   begin p:=pos(' ',st); st:=copy(st,p+1,length(st)-p) end;
   p:=pos(' ',st);//конец нужной подстроки
   if p <> 0 then result:=copy(st,1,p-1)
             else result:=st
   end;          
procedure TForm1.Button1Click(Sender: TObject);
const nn=6;
type size=1..nn;
var a:array[size,size]of integer;
    m,n:size;
    max:integer;
    imax,jmax:size;
    i,j,k:integer;
begin
 m:=StrToInt(Edit1.text);n:=StrToInt(Edit2.text);
 { Ввод матрицы из  Edit3}
 k:=1;
 for i:=1 to m do
   for j:=1 to n do
    begin a[i,j]:=StrToInt(GetSubStr(Edit3.text,k));
          k:=k+1
    end;
 {Вывод номеров строк в 0-м столбце и столбцов в 0-й строке}
 with StringGrid1 do
  begin i:=0; //0-й столбец
    for j:=1 to RowCount-1 do //вывести номера строк
     Cells[i,j]:=IntToStr(j);
    j:=0; //0-я строка
    for i:=1 to ColCount-1 do //вывести номера столбцов
     Cells[i,j]:=IntToStr(i);
  end;
 { Вывод элементов матрицы в таблицу }
 with StringGrid1 do
  for i:=1 to m do
   for j:=1 to n do Cells[j,i]:=IntToStr(a[i,j]);
   max:=a[1,1]; imax:=1; jmax:=1;
   for i:=1 to m do
    for j:=1 to n do
     if a[i,j] > max then
      begin max:=a[i,j];imax:=i;jmax:=j end;
 Label8.Caption:='max='+IntToStr(max);
 Label9.Caption:='imax='+IntToStr(imax);
 Label10.Caption:='jmax='+IntToStr(jmax);
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
 close
end;

end.
Соседние файлы в папке L3Pr5
  • #
    26.05.2014876 б19ProjectL3Pr5.res
  • #
    26.05.20143 Кб18Unit1.~dfm
  • #
    26.05.20142 Кб18Unit1.~pas
  • #
    26.05.20146 Кб18Unit1.dcu
  • #
    26.05.20143 Кб18Unit1.dfm
  • #
    26.05.20142 Кб18Unit1.pas