59. 第 13 届世界杯足球赛进入前八名的国家: ARGENTINA(阿根廷),ENGLAND(英格兰),SPAIN(西班牙),BELGIUM(比利时) GERMANY (西 德),MEXICO (墨西歌),FRANCE(法 国),BRAZIL (巴 西) 这八个国家的英文名藏在一个字块中: A M U I G L E B P P R W Y U B W R Y 需要设计一个程序查找这八个 W V G S T E X A N 国家的第一个字母所在的行和列以 Q N Q E C Y M Z A 及字母的走向.字母的走向规定为 H O R N N Z E I M 八个方向,分别用八个字符串加以 W P A G L T X L R 标注,如图: J R M L K J I L E UP LEFT UP UP RIGHT F S P A I N C N G LEFT RIGHT A K W N G F O I A BOEN LEFT DOWN DOWN RIGHT B P J D C D E H J 要求按国名字符的先后次序打印查找结果, 输出格式规定如下: NAME(国名) ROW(行) COL(列) DIRECTION(方向)
编程要求: 1.模拟调度员的工作,使所有入口处的火车在出口处重新排列; 2.打印出所有的火车在出口处的可能次序; 3.若入口处的火车进一步增加到 N 列呢?
81. 设 X 为一个一维整数数组,其元素由1--N之间的所有整数随机排列,数组下标上限N由键盘输入. 设计程序对数组X 的元素按如下定义的打印规则P打印: (1) 如果 X 为空数组,打印"EMPTY"; (2) 如果 X 的长度是 1,打印出 X 的这个元素值; (3) 如果 X 的长度大于1,设a是X的最小元素,B和C分别是a的左边元素和右边元素组成的子数组; (4) 对B,C的所有元素按(1)(2)(3)规则处理,直至数组长度为1 为止. 打印规则 P 将 X 数组的所有元素按上述处理原则打印,格式如下: a L:B(L 表示 a 的左边) R:C(R 表示 a 的右边) 例如: X=(4,3,5,1,2),则打印成: 1 L: 3 L: 4 R: 5 R: 2 上述结果表示,数组X的最小元素为 1,1的左边元素组成的子数组B=(4,3,5) 而B的最小元素为 3, 3的左边元素为 4,右边元素为 5; 1的右边元素组成的数组为C=(2),只有一个元素.
82. 要求设计一个程序,在每行的字间插入适当空白,使得所有行都在同一列结束.例如:
OPEN TOP COVER TRACTOR FIXING RELEASE 在插入空白后变成: OPEN TOP COVER TRACTOR FIXING RELEASE 在每行字间插入空白时除了右端需对齐外,还需满足: (1) 在不同的相临字间的空格最多相差 1; (2) 对偶数(奇数)行, 所必须出现的空格出现在右端(左端).
答案: var n,m:integer; b,c,q,i,j,k,o:integer; label 10; begin readln(n,m); for i:=n to m do begin b:=1; for j:=2 to (i-1) do if (i mod j) = 0 then b:=0; if b<>0 then begin o:=i; while o<>0 do begin o:=o div 10; for k:=2 to (o-1) do if (o mod k)=0 then begin c:=0;goto 10; end else c:=1; end; if c=1 then begin writeln(i);q:=q+1; end; 10: end; end; write(q); end. (程序没做调试,应该没问题)
小猪喜欢吃苹果。猪妈妈想考考小猪,让小猪一次性的把最大的苹果选主来。你能帮帮小猪么? 说明:输入苹果数n和每个苹果的质量,打印最大的苹果质量和第一次出现的位置。使用文件输入输出 示例:输入: 5 1 3 2 5 4 输出: 4 5 答案: var a:array[1..10000] of integer; n:integer; i,j:integer; max:integer; label 10; begin assign(input,'pig.in'); reset(input); assign(output,'pig.out'); rewrite(output); readln(n); max:=0; for i:=1 to n do begin read(a[i]); if (max<a[i]) then max:=a[i]; end; for i:=1 to n do if a[i]=max then begin j:=i; goto 10; end; 10: writeln(j); write(max); close(input); close(output); end.