举一反三,如何打印金字塔、菱形
看了视频好像会了循环,但是自己着手想 打印 如下的金字塔:
*
* *
* * *
* * * * *
却做不出来,逻辑混乱了。是不是自己太笨了,请问老师有没有好的方法帮助提高?
正在回答 回答被采纳积分+1
同学您好,学习循环有一个循序渐进的过程,建议你能够耐下性子,慢慢学,遇到不会的也不要着急,可以在问答区向老师提问,学习过程中尽可能多多实践,把基础打牢,多思考多总结,俗话说孰能生巧,在逐渐积累的过程中,举一反三也就不是什么难事了。
用循环解决问题的关键所在是找到问题的规律,对于你截图中金子塔的实现,我们通过分析可以看到1~3行的‘*’的出现规律是第一行有一个‘*’,弟二行就有两个,第三行有三个,以此类推,第四行应该是四个‘*’,第n行就应该有n个,且每两个‘*’之间有一个空格;另外,每一行的第一个‘*’并不是紧挨着浏览器左边线输出的,而是先输出很多空格,再输出‘*’,这些空格的输出规律其实也很容易看出来,最后空格一行即第n行的第一个‘*’前面输出的空格数为0,那么倒数第二行前面的空格数应该为1,倒数第三行前面的空格数应该为2,以此类推,第一行前面的空格数应该为n-1。分析到这里,打印这个金子塔的代码也就浮现出来了。
第一步:行循环,如果这个金子塔是n行的,那么我们就要循环n次。
第二部:每一行里面我们都要打印出空格和*,那么根据每一行里需要打印出的空格和*号数,我们还要在行循环里设置两个子循环,分别用于打印每一行的空格和*,根据我们上面这个金子塔组成规律的分析,这三个循环实现起来就很容易了,如下图所示(仅供参考),如果解决了你的问题,请采纳,祝学习愉快~
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星