pascal入门测验2(附答案).docVIP

  • 26
  • 0
  • 约6.55千字
  • 约 6页
  • 2017-12-11 发布于河南
  • 举报
pascal入门测验2(附答案)

小学复赛集训2 1.问题描述:某科技展教馆的团体入场费30人为50元,超过30人后,每增加1 人增加费用1元,为了使所有人平均后的每人费用不超过某个指定的费用m(1m≤1.7)元,问最少以几个人入场为好?指定费用m用键盘输入。例如:输入:m = 1.65 输出:ZuishaoRenshu:31 var i,j : longint; m,n : real; begin write(M = ); readln(m); i := 30; j := 50; n := 50/30; while n m do begin i:=i+1;j:=j+1; n := j/i; end; writeln(i); readln; end. 2.三位数345,345,称这个三位数为“迎春花”数,输出三位数中所有既是“迎春花”数又是质数的数,并统计个数。(127、137、……、569,S=20) var x,a,b,c,s,y,h:integer; begin for x:=100 to 999 do begin a:=x div 100;b:=x div 10 mod 10;c:=x mod 10; s:=0;for y:=1 to x do if x mod y=0 then s:=s+1; if (s=2) and (ab) and (bc) then begin write(x:4);h:=h+1 end; end; write(s=,h); end. 3.所有的正整数均可以表示为一个、两个或者多个连续的正整数之和,给定一个不超过30000的正整数,求出它可以用几种不同的方法表示成连续正整数之和。如给出9,则有三种方法:9,4+5,2+3+4。(注:方法5+4与方法4+5视为是相同的) 用键盘输入一个正整数n(1≤n≤30000),输出与之相应的不同方法种数。 输入输出样例:输入:n=9↙ 输出:3 var s,n,i,j,c:integer; begin write(n=);readln(n); c:=0; for i:=1 to n do begin s:=0;j:=i; while sn do begin s:=s+j; j:=j+1; end; if s=n then c:=c+1; end; writeln(c); end. 4.任意输入一个自然数X,输出它对应的汉语拼音。如输入X=54,则输出 WUSI,若输入X=2789,则输出ERQIBAJIU。 var x,n,i:longint; Y,Y1:STRING; begin read(x); IF X=0 THEN WRITE(LING); while x0 do begin n:=x mod 10; case n of 0:Y:=LING; 1:Y:=YI; 2:Y:=ER; 3:Y:=SAN; 4:Y:=SI; 5:Y:=WU; 6:Y:=LIU; 7:Y:=QI; 8:Y:=BA; 9:Y:=JIU; END; Y1:=Y+Y1; X:=X DIV 10; END; WRITE(Y1); END. 5.小雯去书店书,她选中了六本书,价格分别为A、B、C、D、E、F,但她只带了50元钱,只能买其中的几本书,问怎样买法使总钱数最接近50元(5000分),即剩余的钱最少。A、B、C、D、E、F用分表示,均由键盘输人,输出剩余的钱和购买的书。 输入输出样例:输入: A,B,C,D,E,F= 340 1120 1890 1040 990 880↙ 输出:70 B C D F6174。即:7641-1467=6174。将永远出不来。 输入一个四位数数字(全相同的除外),均能得到6174。输出掉进黑洞的步数。 var a,b,c,d,n,t,x,y,z:integer; begin write(N=);readln(n); t:=0; repeat if n=6174 then break; a:=n div 1000;b:=n div 100 mod 10;c:=n div 10 mod 10; d:=n mod 10; if ab then begin x:=a;a:=b;b:=x;end; if ac then begin x:=a;a:=c;c:=x;end; if ad then begin x:=a;a:=d;d:=x;end; if bc then begin x:=b;b:=c;c:=

文档评论(0)

1亿VIP精品文档

相关文档