排列小星星

一、课前回顾

1、猜数字小游戏,用到了哪些代码知识

  答:random的随机库,randint函数(随机生成一个整数);定义变量,input函数,变量类型转换;三次的if判断;while True循环;break关键字结束循环

2、什么是水仙花数与四叶玫瑰数 ?

  答:水仙花数:一个3位数,每个位置上的数字的3次方之和等于它本身;四叶玫瑰数:一个4位数,每个位置上的数字的四次方之和等于本身

3、如何提取千位数字中百位和十位的数字 ?

  答:拆分数字,用到int()方法取整,“%”取余数。【想一想:还有其他方法吗?】

二、引入:

看看下面的星星组合,你能在控制台中打印出来吗?

三、直角小星星

  

    可是如果要打印一万行星星呢?

    是不是得借助我们学过的循环了呢 !赶紧动手尝试用while循环 或者 for循环两种打印出上面这样的直角小星星吧!!

查看代码

 #while循环
a = 1
while a <= 10:
    print("*" * a)
    a += 1

#for循环
for b in range (1,11):
    print("*" * b)

四、反向直角小星星

  先自己动动脑筋 看有没有思路呢?

 

五、金字塔小星星

看到这个形状,你有没有什么想法呢?

是不是每一层的星星数量都是奇数?

这里的a 是控制循环的次数,n是第几行,c是第n行小星星的个数。你看你看懂了吗?

是不是逐渐达到效果了呀,运行看看还差什么呢?

没错 在星星前面插入空格是不是就完成啦!!

六、课堂总结

小星星打印直角三角形、反向直角三角形、金字塔三角形都用到了哪些知识点呢??

  1、复习了while循环和for循环两种循环结构

  2、range (a,b )的取值范围,包含a,不包含b

  3、取奇数  2n+1和2n-1

  4、print()打印语句自动换行;end=""不换行

七、作业

完成下面两个倒置三角形的打印(都是10行):

要求:第一个使用while循环,第二个使用for循环

posted @ 2023-05-31 11:04  wfxx  阅读(75)  评论(0)    收藏  举报