VB倒三角

PrivateSubCommand1_Click()Fori=1To5Forh=1Toi-1Print"";NexthForj=1To9-i*2Print"*";Next... Private Sub Command1_Click()
For i = 1 To 5
For h = 1 To i - 1
Print " ";
Next h
For j = 1 To 9 - i * 2
Print "*";
Next j
Print
Next i
End Sub
谁能解释上面这个编程的意思,如果要做出一个低端为5个的应该怎么改……
额,低端为5个的说明……每下一层+5个!!!不是倒三角
展开
 我来答
秋名的君
2008-12-28 · TA获得超过1437个赞
知道小有建树答主
回答量:760
采纳率:0%
帮助的人:0
展开全部
Private Sub Command1_Click()
For i = 1 To 5
For h = 1 To i - 1
Print " ";
Next h
For j = 1 To 9 - i * 2
Print "*";
Next j
Print
Next i
Print "the end"

For i = 1 To 4
For j = 4 To i + 1 Step -1
Print " ";
Next j
For h = 1 To 2 * i - 1
Print "*";
Next h
Print
Next i
End Sub

为了方便说明,我在楼主给的代码下面加了个输出“the end”。
按照楼主给的代码,目的是输出一个顶角为一颗“*”的倒金字塔,虽然楼主给的i最大值为5,但是实际上最后一次只不过是再输出一次换行而已,不信楼主可以把你的i最大值改为4,结果肯定是一样的。所以我给您提供的底端为7个*的正金字塔最大值为4。
首先解释一下楼主的代码,这段代码第一个参数i是控制输出的行数,最大值为5行,第二个参数控制每行在输出*前需要输出的空格的个数,这样才让他看起来非常的对称。第一行不需要空格,第二行是1个空格,……,以此类推。第三个参数j控制的是每行输出*的个数,为什么在控制j的上线的时候引入了i呢,因为i是行数,由行数来控制*号的数目这才体现了程序的健壮性,我们必须要假设我们并不知道到底第几行输出的是几个*,虽然在这里代码比较简单,行数很少,可以想象出来,但是如果行数为10000呢,所以我们需要让计算机自己来控制。但是不管怎么样,有一点是肯定的,倒金字塔的首行输出的个数与最后一行输出的个数我们都是清楚的,因为是对称的图形,所以要有一个2*i,那么第一行当然是2*i-1个,也就是7个,最后一行是1个,这就是为什么会是用9来减去2*i的原因,却不用其他的数。

本着激发楼主学习的初衷,我的代码就不解释了,楼主自行体会。
东莞市易合传动科技有限公司
2024-11-06 广告
重载旋转平台是我们东莞市易合传动科技有限公司的明星产品之一。该平台采用高强度材料制造,具有卓越的承载能力和稳定性,能够承受极大的径向和轴向负载。其设计精密,旋转灵活,运转平稳,广泛应用于工业自动化、机器人、机床等领域。我们致力于为客户提供优... 点击进入详情页
本回答由东莞市易合传动科技有限公司提供
百度网友7a6675397
2008-12-28 · TA获得超过238个赞
知道小有建树答主
回答量:284
采纳率:0%
帮助的人:467万
展开全部
For i = 1 To 3
For h = 1 To i - 1
Print " ";
Next h
For j = 1 To 7 - i * 2
Print "*";
Next j
Print
Next i
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式