unit1.~pas
来自「本光盘是《Delphi 7应用教程》一书的配套光盘」· ~PAS 代码 · 共 82 行
~PAS
82 行
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
Label1: TLabel;
Edit1: TEdit;
Label2: TLabel;
Button1: TButton;
Label3: TLabel;
Edit2: TEdit;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
var
arr:Array[1..100]of Integer;//定义全局数组变量
procedure pri_num(n:Integer);//自定义过程
var
m,f,i,j:Integer; //定义局部变量
begin
m:=1;
j:=0;
Repeat //给数组赋初值
arr[m]:=0;
m:=m+1;
Until m>100; //注意不是m>=100
for m:=3 to (n-1) do //判断小于n的偶数中有多少素数
begin
f:=0;
for i:=2 to trunc(m/2) do
if ((m mod i)=0) then
begin
f:=1;
break;//能够整除说明不是素数,中断循环
end;
if (f=0) then //f=0说明m是素数
begin
j:=j+1;
arr[j]:=m; //将素数m添加到数组中
end;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
m,n,k,f:Integer;
begin
m:=StrToInt(Edit1.Text);
f:=0;
pri_num(m);
for n:=1 to 100 do
begin
for k:=1 to 100 do
if (arr[n]+arr[k]=m) then //寻找符合条件的素数
begin
f:=1;
break; //找到符合条件的素数就不再寻找(中断内循环)
end;
if f=1 then
break; //找到符合条件的素数就中断外循环
end;
Edit2.text:=IntToStr(arr[n])+'+'+IntToStr(arr[k]);
end;
end.
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?