回 帖 发 新 帖 刷新版面

主题:输出字母塔

编写程序,写出'字母塔'
                                   A
                                  ABA
                                 ABCBA
                                ABCDCBA
                               ABCDEDCBA
                              ABCDEFEDCBA
        哪位大哥(大姐)愿意帮助菜鸟啊?                [em10]

回复列表 (共14个回复)

沙发

program fbw;
var i,j,x,k:integer;
    a:array[1..6,1..11]of char;
begin
writeln;
k:=6;
for i:=1 to 6 do
  begin
   k:=k-1;
   for x:=k downto 1 do
    write(' ');
   for j:=1 to i*2-1 do
     begin
      a[i,j]:='a';
      write(a[i,j]);
     end;
   writeln;
  end;
end.
我只做了一部分,剩下的请自己动脑。[em12]

板凳

program xsa;
var i,j,n:integer;s:char;
begin
  readln(n);
  for i:=1 to n do write(' ');
  writeln('A');
  for i:=2 to n do
    begin
      for j:=1 to 2*(n-i)-1 do write(' ');
      for s:='A' to chr(ord('A')+i-1) do write(s);
      for s:=chr(ord('A')+i) downto 'A' do write(s);
      writeln;
     end;
end.


3 楼

高手果然厉害,简洁明了。

4 楼

怎么不一样啊?

5 楼

结构清晰

6 楼

2楼的是什么呀
从4开始全乱了呀!!

7 楼

修改一下不就行了吗?

8 楼

应该是以第一行的A和它所在列的B、C、D、E、F(注意是列)为界,左边的为一组用,右边的一组,然后用循环做,刚做过这么一首题来着,不过是数字的1、2、3、4、5而已,晚上拿回来把答案给楼主看罢

9 楼

那请上面的高手快来帮我一下啊!

10 楼

program xsa;
var i,j,n:integer;s:char;
begin
  readln(n);
  for i:=1 to 2*n-2 do write(' ');
  writeln('A');
  for i:=2 to n do
    begin
      for j:=1 to 2*(n-i)-1 do write(' ');
      for s:='A' to chr(ord('A')+i-2) do write(s:2);
      for s:=chr(ord('A')+i-1) downto 'A' do write(s:2);
      writeln;
     end;
end.
[em1][em2][em3][em5][em6][em7][em8][em9][em10][em11][em12][em13][em14][em15][em16][em17][em18][em19][em20]

我来回复

您尚未登录,请登录后再回复。点此登录或注册