Free Pascal编程时有一些题,
来源:学生作业帮 编辑:神马作文网作业帮 分类:综合作业 时间:2024/11/12 19:31:49
Free Pascal编程时有一些题,
1.判断一个数是不是质数
2.求200以内能被3,5,7同时整除的数,输出
3.判断一个数是不是完全因子数(例如:6,它有约数1、2、3、6,除去它本身6外,其余3个数相加,1+2+3=6.28,它有约数1、2、4、7、14、28,除去它本身28外,其余5个数相加,1+2+4+7+14=28.后面的数是496、8128等等)
1.判断一个数是不是质数
2.求200以内能被3,5,7同时整除的数,输出
3.判断一个数是不是完全因子数(例如:6,它有约数1、2、3、6,除去它本身6外,其余3个数相加,1+2+3=6.28,它有约数1、2、4、7、14、28,除去它本身28外,其余5个数相加,1+2+4+7+14=28.后面的数是496、8128等等)
这是我写的,希望能帮助你:
第一题:
program lhc13;
var n,i,t:longint;
begin
readln(n);
for i:=1 to n do
if n mod i=0 then inc(t);
if t=2 then writeln('Yes') {看如果这个数的因数只有两个(即1和它本身)那么就是质数,输Yes,否则就是No}
else writeln('No');
end.
第二题:
program lhc13;
var i:longint;
begin
for i:=1 to 200 do
if (i mod 3=0) and (i mod 5=0)
and (i mod 7=0) then writeln(i); {貌似符合条件的只有105一个};
end.
第三题:
program lhc13;
var a:array[1..100000] of longint;
i,n,s:longint;
begin
readln(n);
for i:=1 to n do
if (n mod i=0) then a[i]:=i; {把因子存进数组}
for i:=1 to n do s:=s+a[i]; {相加}
if (s-n=n) then writeln('Yes') {减去本身之后判断}
else write('No');
end.
全都通过了,很简单易懂的程序哦!
都对,要加分哦~
O(∩_∩)O.
第一题:
program lhc13;
var n,i,t:longint;
begin
readln(n);
for i:=1 to n do
if n mod i=0 then inc(t);
if t=2 then writeln('Yes') {看如果这个数的因数只有两个(即1和它本身)那么就是质数,输Yes,否则就是No}
else writeln('No');
end.
第二题:
program lhc13;
var i:longint;
begin
for i:=1 to 200 do
if (i mod 3=0) and (i mod 5=0)
and (i mod 7=0) then writeln(i); {貌似符合条件的只有105一个};
end.
第三题:
program lhc13;
var a:array[1..100000] of longint;
i,n,s:longint;
begin
readln(n);
for i:=1 to n do
if (n mod i=0) then a[i]:=i; {把因子存进数组}
for i:=1 to n do s:=s+a[i]; {相加}
if (s-n=n) then writeln('Yes') {减去本身之后判断}
else write('No');
end.
全都通过了,很简单易懂的程序哦!
都对,要加分哦~
O(∩_∩)O.