不可完成任务的24集:Pascal题目求解

来源:百度文库 编辑:高校问答 时间:2024/03/29 23:14:53
问题0:菱形(diam)
打印两个边长为N的菱形,2<=N<=11。
例如,当N=3时,应该输出
$ $
$-$ $-$
$-$-$ $-$-$
$-$-$-$ $-$-$-$
$-$-$ $-$-$
$-$ $-$
$ $

当N=2时,应该输出
$ $
$-$ $-$
$-$-$ $-$-$
$-$ $-$
$ $

输入:diam.in
一个整数N。

输出:diam.out
两个边长为N的菱形。不能有多余空格和空行,两个菱形间有一个空格。

program Diam;

procedure WriteS(n:integer);
var count:integer;
begin
count:=n;
repeat
Write('$');
if count>1 then write('-') else write(' ');
count:=count-1;
until count=0;
count:=n;
repeat
Write('$');
if count>1 then write('-');
count:=count-1;
until count=0;
Writeln;
end;

Procedure DrawDiam(n:integer);
var
i:integer;
begin
for i:=1 to n do WriteS(i);
WriteS(n+1);
for i:=n downto 1 do WriteS(i);
Writeln;
end;

var n:integer;
Begin
repeat
Write('Type in a number to draw a diam(Or type in 0 to Exit):') ;
readln(n);
DrawDiam(n);
until n<1;

end.

可以一直读数字画图
直到你输入一个<1的数字
TP7.0&FreePascal3下编译通过
Delphi想编译要声明命令行程序

看看这样行不?
Writes里面其实可以用一个过程弄
但是懒得了
喜欢的话自己合并下

大哥还有个‘-’号呢。
大出来应该是
当N=2时,应该输出
$
$-$
$-$-$
$-$
$