📄 unit1.~pas
字号:
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 + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -