PASCAL问题
2.分别用函数和过程完成下列题目1.求从键盘输入的五个自然数的最小公倍数。2.哥德巴赫猜想的命题之一是:大于6的偶数等于两个素数之和。编程将6~100所有偶数表示成两个素...
2. 分别用函数和过程完成下列题目
1.求从键盘输入的五个自然数的最小公倍数。
2.哥德巴赫猜想的命题之一是:大于6 的偶数等于两个素数之和。编程将6~100所有偶数表示成两个素数之和。
3.如果一个自然数是素数,且它的数字位置经过对换后仍为素数,则称为绝对素数,例如13。试求出所有二位绝对素数。
如果一个自然数除了1和本身,还有别的数能够整除它, 这样的自然数就是合数。例如15,除了1和15,还有3和5能够整除,所以15是合数。14,15,16是三个连续的合数,试求连续十个最小的合数。
4.求前n个自然数的平方和,要求不用乘法。例如:3的平方不用3*3,可用3+3+3。
5.试用容积分别为17升、13升的两个空油桶为工具,从大油罐中倒出15升油来,编程显示出具体的倒油过程。
6.如果一个数从左边读和从右边读都是同一个数,就称为回文数。例如6886就是一个回文数,求出所有的既是回文数又是素数的三位数。
7. Faibonacci数列前几项为: 0,1,1,2,3,5,8,…,其规律是从第三项起, 每项均等于前两项之和。求前30项, 并以每行5个数的格式输出。 展开
1.求从键盘输入的五个自然数的最小公倍数。
2.哥德巴赫猜想的命题之一是:大于6 的偶数等于两个素数之和。编程将6~100所有偶数表示成两个素数之和。
3.如果一个自然数是素数,且它的数字位置经过对换后仍为素数,则称为绝对素数,例如13。试求出所有二位绝对素数。
如果一个自然数除了1和本身,还有别的数能够整除它, 这样的自然数就是合数。例如15,除了1和15,还有3和5能够整除,所以15是合数。14,15,16是三个连续的合数,试求连续十个最小的合数。
4.求前n个自然数的平方和,要求不用乘法。例如:3的平方不用3*3,可用3+3+3。
5.试用容积分别为17升、13升的两个空油桶为工具,从大油罐中倒出15升油来,编程显示出具体的倒油过程。
6.如果一个数从左边读和从右边读都是同一个数,就称为回文数。例如6886就是一个回文数,求出所有的既是回文数又是素数的三位数。
7. Faibonacci数列前几项为: 0,1,1,2,3,5,8,…,其规律是从第三项起, 每项均等于前两项之和。求前30项, 并以每行5个数的格式输出。 展开
2个回答
展开全部
1.
program sd;
var a:array[1..5]of integer;
n,i:longint;
function gongb(num1:integer;num2:integer):integer;
var j:longint;
begin
for j:=num1 to num1*num2 do
if (j mod num1=0) and (j mod num2=0) then
begin
gongb:=j;
exit;
end;
end;
begin
n:=1;
for i:=1 to 5 do
begin
read(a[i]);
n:=gongb(a[i],n);
end;
writeln(n);
end.
2.
program sd;
var i,p,q:integer;
function pou(a:integer):boolean;
var j,n:integer;
begin
n:=0;
for j:=1 to a do
if a mod j=0 then
n:=n+1;
if n=2 then
pou:=true
else
pou:=false;
end;
begin
for i:=6 to 100 do
if i mod 2=0 then
begin
p:=1;
repeat
p:=p+1;
q:=i-p;
until (pou(p)) and (pou(q));
writeln(i,'=',p,'+',q);
end;
end.
3.(1)
program sd;
var i,j:integer;
function pan(a:integer):boolean;
var m,n:integer;
begin
m:=0;
for n:=1 to a do
if a mod n=0 then
m:=m+1;
if m=2 then
pan:=true
else pan:=false;
end;
begin
for i:=10 to 99 do
begin
j:=(i mod 10)*10+i div 10;
if (pan(i))and(pan(j)) then writeln(i);
end;
end.
3.(2)
program sd;
var i:array[1..10]of longint;
j:integer;
he:boolean;
function phe(a:longint):boolean;
var m,n:longint;
begin
n:=0;
for m:=1 to a do
if a mod m=0 then
n:=n+1;
if n>2 then
phe:=true
else
phe:=false;
end;
begin
for j:=1 to 10 do
i[j]:=j-1;
repeat
for j:=1 to 10 do
i[j]:=i[j]+1;
he:=true;
for j:=1 to 10 do
he:=he and phe(i[j]);
until he;
for j:=1 to 10 do
writeln(i[j]);
end.
4.
program sd;
var n,j:integer;
procedure wrs(a:integer);
var k:integer;
begin
write(a,'=');
for k:=1 to a do
if k=1 then
write(a)
else
write('+',a);
writeln;
end;
begin
readln(n);
for j:=1 to n do
wrs(j);
end.
第5不会
6.
program asd;
var i:integer;
function ch(a:integer):boolean;
var s,m:string;
j,n:integer;
begin
n:=0;
s:='';
str(a,m);
for j:=3 downto 1 do
s:=s+m[j];
if s=m then ch:=true
else ch:=false;
for j:=1 to a do
if a mod j=0 then n:=n+1;
ch:=ch and (n=2);
end;
begin
for i:=100 to 999 do
if ch(i) then
writeln(i);
end.
7.
program fb;
var a:array[1..30]of longint;
i:integer;
begin
a[1]:=0;
a[2]:=1;
for i:=3 to 30 do
a[i]:=a[i-1]+a[i-2];
for i:=1 to 30 do
begin
write(a[i],' ');
if i mod 5=0 then writeln;
end;
end.
program sd;
var a:array[1..5]of integer;
n,i:longint;
function gongb(num1:integer;num2:integer):integer;
var j:longint;
begin
for j:=num1 to num1*num2 do
if (j mod num1=0) and (j mod num2=0) then
begin
gongb:=j;
exit;
end;
end;
begin
n:=1;
for i:=1 to 5 do
begin
read(a[i]);
n:=gongb(a[i],n);
end;
writeln(n);
end.
2.
program sd;
var i,p,q:integer;
function pou(a:integer):boolean;
var j,n:integer;
begin
n:=0;
for j:=1 to a do
if a mod j=0 then
n:=n+1;
if n=2 then
pou:=true
else
pou:=false;
end;
begin
for i:=6 to 100 do
if i mod 2=0 then
begin
p:=1;
repeat
p:=p+1;
q:=i-p;
until (pou(p)) and (pou(q));
writeln(i,'=',p,'+',q);
end;
end.
3.(1)
program sd;
var i,j:integer;
function pan(a:integer):boolean;
var m,n:integer;
begin
m:=0;
for n:=1 to a do
if a mod n=0 then
m:=m+1;
if m=2 then
pan:=true
else pan:=false;
end;
begin
for i:=10 to 99 do
begin
j:=(i mod 10)*10+i div 10;
if (pan(i))and(pan(j)) then writeln(i);
end;
end.
3.(2)
program sd;
var i:array[1..10]of longint;
j:integer;
he:boolean;
function phe(a:longint):boolean;
var m,n:longint;
begin
n:=0;
for m:=1 to a do
if a mod m=0 then
n:=n+1;
if n>2 then
phe:=true
else
phe:=false;
end;
begin
for j:=1 to 10 do
i[j]:=j-1;
repeat
for j:=1 to 10 do
i[j]:=i[j]+1;
he:=true;
for j:=1 to 10 do
he:=he and phe(i[j]);
until he;
for j:=1 to 10 do
writeln(i[j]);
end.
4.
program sd;
var n,j:integer;
procedure wrs(a:integer);
var k:integer;
begin
write(a,'=');
for k:=1 to a do
if k=1 then
write(a)
else
write('+',a);
writeln;
end;
begin
readln(n);
for j:=1 to n do
wrs(j);
end.
第5不会
6.
program asd;
var i:integer;
function ch(a:integer):boolean;
var s,m:string;
j,n:integer;
begin
n:=0;
s:='';
str(a,m);
for j:=3 downto 1 do
s:=s+m[j];
if s=m then ch:=true
else ch:=false;
for j:=1 to a do
if a mod j=0 then n:=n+1;
ch:=ch and (n=2);
end;
begin
for i:=100 to 999 do
if ch(i) then
writeln(i);
end.
7.
program fb;
var a:array[1..30]of longint;
i:integer;
begin
a[1]:=0;
a[2]:=1;
for i:=3 to 30 do
a[i]:=a[i-1]+a[i-2];
for i:=1 to 30 do
begin
write(a[i],' ');
if i mod 5=0 then writeln;
end;
end.
意法半导体(中国)投资有限公司
2023-06-12 广告
2023-06-12 广告
单片机,即单片微控制器,也称为单片微型计算机,是将中央处理器(CPU)、存储器(ROM,RAM)、输入/输出接口和其他功能部件集成在一块 在一个小块的集成电路上,从而实现对整个电路或系统的数字式控制。单片机不是完成某一个逻辑功能的芯片,而是...
点击进入详情页
本回答由意法半导体(中国)投资有限公司提供
展开全部
1.求从键盘输入的五个自然数的最小公倍数
刚学的PASCAL,而且不保证对,很多都没定义,打印和主程序没有,没时间试了,给后面的人留个模板吧,自己抢个沙发。。。
Program PASex1;
Var
a:Array[1..5]Of Integer;
Function d1(b);
Var
i, j, s, k:Integer;
f:Boolean;
Begin
s:=1;
For i:=1 To 5 Do
For j:=1 To 5 Do Begin
If i=j Then Break;
If b[i] Mod b[j] = 0 Then Begin
Inc(k);d[k]:=j;
End;
f:=True;
For i:=1 To (5-k) Do Begin
For j:=1 To k Do Begin
If i=d[j] Then Begin
f:=True;
Break;
End;
End;
If f:=True Then s:=s*b[i];
End;
End;
刚学的PASCAL,而且不保证对,很多都没定义,打印和主程序没有,没时间试了,给后面的人留个模板吧,自己抢个沙发。。。
Program PASex1;
Var
a:Array[1..5]Of Integer;
Function d1(b);
Var
i, j, s, k:Integer;
f:Boolean;
Begin
s:=1;
For i:=1 To 5 Do
For j:=1 To 5 Do Begin
If i=j Then Break;
If b[i] Mod b[j] = 0 Then Begin
Inc(k);d[k]:=j;
End;
f:=True;
For i:=1 To (5-k) Do Begin
For j:=1 To k Do Begin
If i=d[j] Then Begin
f:=True;
Break;
End;
End;
If f:=True Then s:=s*b[i];
End;
End;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询