【python练习题】九九乘法表 讲解

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

学习记录。
第一次写博客,欢迎大家提出自己的意见或者建议。


一、运用到的python基础知识

while循环:

		while 条件:		#条件为真则继续执行
			执行语句		#条件为真,则执行该语句

占位符:

	使用 %s实现占位 % 值,传多个值采用%(值1,值2)
	%s(针对所有数据类型)
	%d(仅仅针对数字类型)

输出不换行的方式:

	在print()括号里面,末尾加上end=“”

二、步骤

第一步:我们需要先清楚我们要实现的效果是什么样子的

在这里插入图片描述

第二步:清楚了实现效果,来分析实现方案

2.1 为了方便理解,我把上方的九九乘法表补全了,补全成简易版本的九九乘法表,这样是不是就简单理解了:
在这里插入图片描述
2.2 然后拆解出第一行,并用代码实现:在这里插入图片描述

i=1
while i<=9:
    print(" 1*%s=%s"%(i,1*i),end="  ")
    i+=1

2.3 接着拆解出第二行,并用代码实现:
在这里插入图片描述

i=1
while i<=9:
    print(" 2*%s=%s"%(i,2*i),end="  ")
    i+=1

2.4 继续,实现,第三行、第四行…第九行,是否发现个规律,每增加一行,这个位置的数字就+1:
在这里插入图片描述
2.5 把这个规律提取出来,设计成变量我们再来看看实现效果:

i=1
while i<=9:
    j=1
    while j<=9:
        print(" %s*%s=%s"%(j,i,i*j),end="  ")
        j+=1
    print()
    i+=1

2.6 到这里,我们已经实现2.1里说的简易版九九乘法表的效果,就差最后一步了!!!(ง •_•)ง!

第三步:优化代码

3.1 :我对图一、图二的每一行进行了比较。
在这里插入图片描述
3.2 我发现,在每一行,当i<j的时候,就不会在继续执行剩下公式的输出
在这里插入图片描述
3.3 到这里我地第一反应是在代码第四行插入一条条件判断语句,但是仔细观察,就会发现,其实第四行和第五行代码的效果是一样的,这样就造成代码冗余。
在这里插入图片描述
3.4 经过最后的敲打,我把冗余的代码结合起来:

i=1
while i<=9:
    j=1
    while j<=i:
        print(" %s*%s=%s"%(j,i,i*j),end="  ")
        j+=1
    print()
    i+=1

3.5 我们运行看看最终的效果吧!
在这里插入图片描述

三、扩展

for循环实现方式

for i in range(1, 10):
    for j in range(1,i+1):
        print(" %s*%s=%s\t" % (j, i, i * j), end="")
        j += 1
    print()
    i += 1

总结

古人常说:“大事化小,小时化l”,我觉得很有道理,有时候一个问题想不出来解决办法,可以进行拆分,再拆分,再难的问题也能解决。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值