noip普及组初赛写运行结果完善程序9(附答案)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

写出下列程序运行结果1.var
i,a,b,c,d:integer;
f:array[0..3] of integer;
begin
for i:=0 to 3 do
read(f[i]);
a := f[0] + f[1] + f[2] + f[3];
a := a div f[0];
b := f[0] + f[2] + f[3];
b := b div a;
c := (b * f[1] + a) div f[2];
d := f[(b div c) mod 4];
if (f[(a + b + c + d) mod 4] > f[2]) then begin a := a + b;
writeln(a);
end else
begin
c := c + d;
writeln(c);
end;
end.
输入30 20 10 5
输出74
2.VAR a:ARRAY [1..4] OF Char; C,Ch :Char;
BEGIN
FOR Ch:='W' TO 'Z' DO
a[Ord(Ch)-Ord('W')+1]:=Ch; FOR Ch:='W' TO 'Z' DO
BEGIN
FOR C:=Ch TO 'Z' DO
Write(a[Ord(C)一Ord('W')+1]; Writeln
END
END.
输出 WXYZ
XYZ
YZ
Z
3.VAR
a,b:Integer;
PROCEDURE P(C:Integer:VAR d:Integer); BEGIN
C:=a+b;
d:=a-b;
END;
BEGIN
a:=1;
b:=2;
P(a,b);
Writeln(a:3,b:3)
END.
输出 1 -1
4.type
TT= array[0..20]of integer;
procedure func(var ary:TT; n:integer); var
i,j,x:integer;
begin
i:=0;j:=n-1;
while i<j do begin
while (i<j) and (ary[i]>0) do inc(i); while (i<j) and (ary[j]<0) do dec(j); if i<j then begin
x:=ary[i];
ary[i]:=ary[j];
ary[j]:=x;
inc(i);
dec(j);
end;
end;
end;
var
a:TT;
i,m:integer;
begin
m:=10;
for i:=0 to m-1 do read(a[i]);
func(a,m);
for i:=0 to m-1 do write(a[i], ' '); writeln;
end.
输入:5 4 -6 -11 6 -59 22 -6 1 10
输出:_5 4 10 1 6 22 -59 -6 -11 -6___
完善程序:
当输入一个给定的数后,能输出所有不超过n的、其平方由左右对称的数字组成的数。

例如: n=23,则输出:1,2,3,11,22。

它们的平方依次是:1,4,9,121,484,都是左右对称的数字组成的数。

const max=1000;
var m,n,i,j,s:longint;
d:array[0..max] of byte;
begin
write('Please input a number: ');
readln(n);
for m:=1 to n do begin
【1】;
j:=0;
while s>0 do begin
j:=j+1;
d[j]:=s mod 10;
【2】;
end;
i:=1;
while (d[i]=d[j]) and (i<j) do begin 【3】;
【4】
end;
if i>=j then writeln(【5】)
end;
readln
end.
【1】s:=m*m 【2】s:=s div 10; 【3】i:=i+1 【4】j:=j-1 【5】m:5,’‘,m*m。

相关文档
最新文档