主题:[讨论]怎样打印菱形??????????
yfyf
[专家分:440] 发布于 2007-07-24 09:36:00
如:
*
***
*****
***
*
回复列表 (共15个回复)
沙发
wzc1996 [专家分:1680] 发布于 2007-07-24 09:37:00
CLS
INPUT n
FOR i = 1 TO n
PRINT TAB(n - i + 1);
FOR j = 1 TO 2 * i - 1
IF j > i THEN PRINT USING "#"; 2 * i - j; ELSE PRINT USING "#"; j;
NEXT
PRINT
NEXT
板凳
wzc1996 [专家分:1680] 发布于 2007-07-24 09:37:00
CLS
INPUT n
FOR a = -(n - 1) / 2 TO (n - 1) / 2
PRINT TAB(ABS(a) + 1);
FOR b = 1 TO 2 * ((n + 1) / 2 - ABS(a)) - 1
PRINT "*";
NEXT b
PRINT
NEXT a
3 楼
Lovely哆啦 [专家分:1360] 发布于 2007-07-24 09:51:00
INPUT N
M=N\2
FOR I=-M TO M
print TAB(ABS(I)+1);STRING$(N-ABS(I)*2,"*")
NEXT I
4 楼
小小傻瓜 [专家分:150] 发布于 2007-07-28 16:46:00
简单易懂。
INPUT N
FOR I=1 TO N
PRINT TAB(N+1-I);
FOR J=1 TO 2*I-1
PRINT"*";
NEXT J
PRINT
NEXT I
FOR I=N-1 TO 1 STEP-1
PRINT TAB(N+1-I);
FOR J=1 TO 2*I-1
PRINT"*";
NEXT J
PRINT
NEXT I
也给我加分,好吗?
5 楼
小精灵1号 [专家分:1040] 发布于 2007-08-09 10:57:00
CLS
INPUT N
M = N \ 2
FOR I = -M TO M
PRINT TAB(ABS(I) + 1);
FOR J = 1 TO N - ABS(I) * 2
PRINT "*";
NEXT J: PRINT
NEXT I
END
6 楼
QB爱好者 [专家分:370] 发布于 2007-08-28 16:16:00
CLS
INPUT "N=",N
FOR I = 1 TO N
PRINT TAB(N - I + 1);
FOR J = 1 TO 2 * I - 1
IF J > I THEN PRINT USING "#"; 2 * I - J; ELSE PRINT USING "#"; J;
NEXT J
PRINT
NEXT I
END
7 楼
我的电脑 [专家分:990] 发布于 2007-09-20 17:37:00
CLS
INPUT N:M = N \ 2
FOR I = -M TO M
PRINT TAB(ABS(I) + 1);
FOR J = 1 TO N - ABS(I) * 2:PRINT "*";: NEXT J
PRINT
NEXT I
END
加分!!!!!!!!!!!!!!!!!!!!!!!!111
8 楼
QB小猪 [专家分:1200] 发布于 2007-09-21 17:40:00
1楼的.6楼的调试过没有,打出来根本不是菱形嘛.
cls
input n:m=n-1 'n代表菱形边长
for i=-m to m
?tab(abs(i)+1);string$(n+m-abs(i)*2,"*")
next i
end
9 楼
傲视人间 [专家分:60] 发布于 2007-12-01 12:43:00
CLS
INPUT N
M = N \ 2 + 1
FOR I = 1 TO N
PRINT TAB(ABS(M - I) + 1); STRING$(N - ABS(M - I) * 2, "*")
NEXT I
END
10 楼
lu1012 [专家分:20] 发布于 2007-12-01 16:03:00
提醒一下,6楼的程序不对!
主要需要用PRINT TAB语句,如下程序:
CLS
INPUT N:M = N \ 2
FOR I = -M TO M
PRINT TAB(ABS(I) + 1);
FOR J = 1 TO N - ABS(I) * 2:PRINT "*";: NEXT J
PRINT
NEXT I
END
我来回复