求出所有的既是回文数又是素数的三位数.pascal求大神求解哪里错了?

首页/题库/113℃/2024-05-17 12:05:35

求出所有的既是回文数又是素数的三位数.pascal求大神求解哪里错了?

最近刚刚学的pascal有个题目自己手打可是错了.

var h,h1:integer;

yes:boolean;

procedure

sub(x:integer; var yy:boolean);

var k,n:integer;

begin

for k:= 1to x do

begin n:=0;

if x mod k =0 then

inc(n);

end;

if n>2 then yy:=false;

end;

procedure

hw(x:integer;var dd:integer);

var k,m,n:integer;

begin

k:=x div 100;

m:=x div 10 -10*k;

n:=x mod 100;

dd:=100*n+10*m+k;

end;

begin

for h:= 100 to 999 do

begin h1:=0;

yes:=true;

sub(h,yes);

if yes then

begin hw(h,h1);

if h=h1 then write(h:6);

end;

end;

readln

end.

这个程序哪里错了?

输出101,202,303,404,505,606,707,808,909.

优质解答:

var h,h1:integer;

yes:boolean;

procedure sub(x:integer; var yy:boolean);//是不是素数

var k,n:integer;

begin

n:=0;//n赋初值,要放到循环前面

for k:= 1to x do

begin

if x mod k =0 then

inc(n);

end;

if n>2 then yy:=false;

end;

procedure hw(x:integer;var dd:integer);//是不是回文数

var k,m,n:integer;

begin

k:=x div 100;

m:=x div 10 -10*k;

n:=x mod 100;

dd:=100*n+10*m+k;

end;

begin

for h:= 100 to 999 do

begin h1:=0;

yes:=true;

sub(h,yes);

if yes then

begin hw(h,h1);

if h=h1 then write(h:6);

end;

end;

readln

end.

我来回答修改/报错/举报内容!

猜你喜欢

一个神奇的在线题库网,分享各类考试题库、题目资料与资料答案、在线搜题与练习等!
本网站部分内容、图文来自于网络,如有侵犯您的合法权益,请及时与我们联系,我们将第一时间安排核实及删除!
Copyright © 2021-2024 315题库 All Rights Reserved