德州点创教育:经典FOR循环打印星号三角形算法详解
有的朋友很怀念十年前 , 一道C语言等级考试的经典题目:打印星形三角形 。 没错 , 这道题当时弄晕了很多同学 。 其实做这类题 , 关键是数列与脑图分析 。 另外 , 在PYTHON大行其其道的今天 , 我们看一下 , python是如何做这道题的 。
文章插图
这是程序运行结果
其实 , 这道题 , 玩的是数列的概念 , 数列在初中二年级就有了 , 但是光会数列还不行 , 还需要有逻辑循环 , 也就是FOR循环来辅助完成 。
【德州点创教育:经典FOR循环打印星号三角形算法详解】下面 , 上一张图 , 我们做一个分析:
我一直强调我的孩子 , 做数学题时 , 特别是做难度大的数学题时 , 一定要在脑海里画图 , 如果脑图画不出来 , 就要用纸画图 , 因为好多数学是 , 一转成二维图形 , 就简单多了 。
我们假设 , 我们要打印一个4行的*号三角形 。 所以假设 n = 4
文章插图
python打印星形三角形
一共有n = 4 行:第n行: 我们打印 几 个+号 , 然后打印几个*号第i = 1行:31第i = 2行:23 第i = 3行:15第i = 4行:07数组总结n-i2*i-1
在上面 , n代表 , 我们要打印多少行 , i 代表我们打印的每一行的行号 。
所以 , 代码如下:
n = 4for i in list(range(1,n+1)):print("+"*(n-i),end="")print("*"*(2*i-1))
如图:
文章插图
德州青少年编程算法实例
然后 , 我们再把 + 换为一个空格就可以了 。 也同样是4行代码 。
n = 4for i in list(range(1,n+1)):print(" "*(n-i),end="")print("*"*(2*i-1))
文章插图
好了 , 如果大家想试试别的 , 只需要改变一下n的值 , 就可以了 。
最后 , 我要说的是 , 青少年在学习数学知识时 , 可以通过编程的学习 , 把数学知识通过程序图形化 , 时间长了 , 形成自己的二维脑图 , 甚至形成自己的三维脑图 。 这样坚持下来 , 人才能聪明 。
这也就是家长们常说的:
做题要动脑子 , 但是脑子如何动 , 家长没有说 。
推荐阅读
- 疫情让线下教培机构停摆?别怕,腾讯教育“抗疫空投包”抵达
- 在线教育陷入持久战 作业帮凭“长期主义”掌握主动权
- 突发:又一家教育独角兽一夜倒下,估值超10亿美金,学生500万
- 教育圈又一独角兽暴雷,创始人卷款跑路,数10万家长被坑惨
- ?优学天下带着学习机冲刺上市,智能教育硬件有多烧钱?
- 德州市实验小学首届科技创新节闭幕
- AI技术推动教育革新,松鼠Ai突破传统教育局限性
- 亚马逊在印度启动“Future Engineer”计算机科学教育项目
- 迎浪新生2020 |新增8.2万家,融资530亿,在线教育鼠年躺着数钱?
- 整合K12业务 在线教育企业跟谁学升级旗下高途课堂