⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 unit1.~pas

📁 本光盘是《Delphi 7应用教程》一书的配套光盘
💻 ~PAS
字号:
unit Unit1;

interface

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

type
  TForm1 = class(TForm)
    Button1: TButton;
    Button2: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation
var
  arr:Array[1..3,1..4]of Integer;//定义二维全局数组变量

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
  m,n:Integer; 
begin
  Canvas.FillRect(Form1.ClientRect);//清除先前产生的随机数组
  for m:=1 to 3 do
    for n:=1 to 4 do
      arr[m,n]:=StrToInt(InputBox('输入数组元素','输入arr['+IntToStr(m)+
          ','+IntToStr(n)+']:','0'));//输入数组元素arr[m,n]
  for m:=1 to 3 do
    for n:=1 to 4 do
      Canvas.TextOut(20+35*n,40+25*m,IntToStr(arr[m,n]));//显示arr[m,n]
end;

procedure TForm1.Button2Click(Sender: TObject);
var
  m,n,k,j,f:Integer;
begin
  for m:=1 to 3 do
    begin
      f:=1;
      k:=1;
      for n:=2 to 4 do
        if arr[m,k]<arr[m,n] then
          k:=n; //寻找本行中最大值的下标
      for j:=1 to 3 do
        if arr[j,k]<arr[m,k] then
          begin
            f:=0;//本行中最大值元素不是该列最小值,故该行没有鞍点
            break;//终止循环
          end;
      if f=1 then
        break;  //找到一个鞍点即终止
    end;
  if f=1 then
    Canvas.TextOut(30,30,'第一个鞍点坐标为('+IntToStr(m)+','+
        IntToStr(k)+')') //指定位置显示鞍点坐标
  else
    Canvas.TextOut(30,30,'没有鞍点');//指定位置显示没有鞍点
end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -