九九乘法表--课后程序(Python程序开发案例教程-黑马程序员编著-第3章-课后作业)

实例9:九九乘法表

乘法口诀是中国古代筹算中进行乘法、除法、开方等运算的基本计算规则,沿用至今已有两千多年。古代的乘法口诀与现在使用的乘法口诀顺序相反,自上而下从“九九八十一”开始到“一一如一”为止,因此,古人用乘法口诀的前两个字“九九”做为此口诀的名称。

本实例要求编写程序,实现通过for循环嵌套输出下列样式的九九乘法表的功能。

1*1=1  

1*2=2   2*2=4  

1*3=3   2*3=6   3*3=9  

1*4=4   2*4=8   3*4=12  4*4=16 

1*5=5   2*5=10  3*5=15  4*5=20  5*5=25 

1*6=6   2*6=12  3*6=18  4*6=24  5*6=30  6*6=36 

1*7=7   2*7=14  3*7=21  4*7=28  5*7=35  6*7=42  7*7=49 

1*8=8   2*8=16  3*8=24  4*8=32  5*8=40  6*8=48  7*8=56    8*8=64 

1*9=9   2*9=18  3*9=27  4*9=36  5*9=45  6*9=54  7*9=63    8*9=72  9*9=81 

实例目标

  1. 掌握while循环的使用
  2. 了解break的基本用法

实例分析

九九乘法表一共有九行,每行等式的变量和行号相等,例如第二行包含两个等式,第六行包含6个等式,以此类推,第九行包含9个等式。根据其特点可知可使用for循环嵌套解决此问题。

我们可以定义变量i控制乘法表的行数与变量j控制乘法表等式量的输出。

第一个for循环用来控制乘法表中每行的第一个因子和表的行数;第二个for循环中变量j取值范围的确定建立在第一个for循环的基础上,它的取值是第一个for循环中变量的值,换言之,j的取值根据行数变化,运行到第几行,j的最大值就是几。

为了控制格式,将乘法表分行,需要在每行的末尾输出一个换行。

代码实现

for i in range(1, 10):

    for j in range(1, i + 1):

        print(str(j) + str("*") + str(i) + "=" + str(i * j), end="\t")

    print()  # 换行输出

上述代码中,第1个for循环的循环因子i的通过range()函数设置,其取值范围为1-9。因为等式的数量与行号相等,所以在第2个for循环中变量j最大取值范围为等式数量。行数与等式量控制好后,便可以对乘法表中的乘法口诀进行拼接,拼接完成后进行换行输出。

代码测试

运行代码,控制台输出结果如下:

1*1=1

1*2=2   2*2=4

1*3=3   2*3=6   3*3=9

1*4=4   2*4=8   3*4=12  4*4=16

1*5=5   2*5=10  3*5=15  4*5=20  5*5=25

1*6=6   2*6=12  3*6=18  4*6=24  5*6=30  6*6=36

1*7=7   2*7=14  3*7=21  4*7=28  5*7=35  6*7=42  7*7=49

1*8=8   2*8=16  3*8=24  4*8=32  5*8=40  6*8=48  7*8=56  8*8=64

1*9=9   2*9=18  3*9=27  4*9=36  5*9=45  6*9=54  7*9=63  8*9=72  9*9=81

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

xiaozhima-dun

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值