下面的过程用于实现把一个偶数分解为两个素数之和,按要求作答.1)写一个自定义函数IsPrimeNumber(Num:integer),用于判断用户输入的数值"Num"是否是素数.
2)利用上一题的函数IsPrimeNumber(Num:integer),写一个自定义函数,当用户输入一个偶数时,把它分解为两个素数之和,对于不是偶数或者无法分解的数应该给予提示说明.
2)利用上一题的函数IsPrimeNumber(Num:integer),写一个自定义函数,当用户输入一个偶数时,把它分解为两个素数之和,对于不是偶数或者无法分解的数应该给予提示说明.
解决方案 »
- 在insert数据的时候如何返回自动编号的id?
- 已知菜单的name(字符串),如何控制其属性enabled?
- delphi中调用API时怎么知道应用传递什么参数?有没有VB 中的API浏览器那样的工具?
- 关于使用formula one模板的问题,求助!!!
- 如何读取outlook express里的邮件帐号?就好像icq的邮件设置那样,可以有一个列表显示全部帐号
- exitwindowsex的参数取值
- 这样的Fastreport怎么生成,主从表?
- 紧急求助,关于C/S远程实时收费系统
- ▌▌▌▌版主您在么?还有常见到的几位高手前辈?▌▌▌▌
- 纳闷!!!关于dbgrid!!!
- dbgrid 垂直滚动条的隐藏???????
- 菜鸟求解DELPHI 7 问题 各位大大多帮忙 奉分
for i:=2 to Trunc(Sqrt(要判断的数)) do
begin
if 要判断的数 mod i=0 then
begin
//此数不是素数;
s:=false;
Break;
end;
end;
//执行到此s表明是否素数。
var
i,iNum1,iNum2:integer;
begin
Num1 := 0;
Num2 := 0;
Result := false; if (Num mod 2)<>0 then
Exit; iNum1 := Num div 2;
for i := 2 to iNum1 do
begin
if IsPrimeNumber(i) and IsPrimeNumber(Num-i) then
Break
else
Continue;
end;
Num1 := i;
Num2 := Num-i;
Result := true;
end;function TForm1.IsPrimeNumber(Num: integer): boolean;
var
i,iTotal,iMod : integer;
begin
iMod := Num Mod 2;
if ((iMod = 0) and (Num <>2)) then
begin
Result := false;
Exit;
end; iTotal := Num div 3;
for i := 3 to iTotal do
begin
iMod := Num Mod i;
if iMod = 0 then
begin
Result := false;
Exit;
end;
end; Result := true;
end;