46.for循环嵌套之九九乘法表

文章目录

  • 46.for循环嵌套之九九乘法表
    • 1. 目标任务
    • 2. 完成第1行输出
    • 2. 分析前3行规律
    • 3. 编写第1行代码
    • 4. 编写前2行代码
    • 5. 调整输出格式
    • 6. 完成总代码

1. 目标任务

本节的任务是利用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

怎样才能输出上面的九九乘法表呢?

在我们没有思路的时候,我们先把任务拆分,然后试着找到编写规律。

2. 完成第1行输出

【目标任务】

原样输出1*1=1

x = 1
y = 1
print("%d*%d=%d" % (x, y , x*y))

【终端输出】

1*1=1

不理解%d作用的需要先回看上一节《45.%占位符格式化处理》的内容。

【语法】

(要输出的内容 % 要格式化的变量或数值)

"%d*%d=%d"是最后要输出的内容的模板。

%是格式化占位符。

x, y , x*y是3个要格式化的变量,分别替换输出模板中的%d.

2. 分析前3行规律

【输出内容】

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

【分析规律】

第1行:x=1,y=1

第2行:x=1、2,y=2

第3行:x=1、2、3,y=3

我们发现y的值在每一行都是固定的,第1行y=1,第y=2,第3行y=3。

x的值是不固定的,它和y有一定的关联。

y=1时,x=1

y=2时,x=1,2

y=3时,x=1,2,3

x的值总是从1开始到y结束,且两个数之间差1。

我们可以很快速的想到range函数可以实现这个输出。

x和y是要联系在一起的,因此这里用y+1来控制x的值。

range函数含前不含后,因此,当x要取1的时候,range函数要以y+1结束(不含)。

【y = 1】

y = 1
print(list(range(1,y+1)))

【终端输出】

[1]

【y = 2】

y = 2
print(list(range(1,y+1)))

【终端输出】

[1, 2]

【y = 3】

y = 3
print(list(range(1,y+1)))

【终端输出】

[1, 2, 3]

3. 编写第1行代码

值是变动的,且每次取出的数值是不一样的,我们考虑用range函数来生成值,用for循环来取值。

y在每一行都是固定的,因此我们可以把y写成for循环的外循环。

x每次都是从1开始,到等于y值结束,因此x要写成for循环的内循环。

同样先完成第一行代码的编写。

for y in range(1,2):for x in range(1,y+1):print("%d*%d=%d" % (x, y , x*y))

【终端输出】

1*1=1

4. 编写前2行代码

1*1=1
1*2=2 2*2=4

第2行,y=2,外循环的range的范围为1到3(不含3)。

for y in range(1,3):for x in range(1,y+1):print("%d*%d=%d" % (x, y , x*y))

【终端输出】

1*1=1
1*2=2
2*2=4

5. 调整输出格式

观察输出结果,发现输出的格式和我们要的不一样。

再观察九九乘法表,我们发现每一行输出以后都有一个换行。

因此在每一次内循环执行完毕后我们都添加一个换行print( )

因为每1行的2个表达式之间都有一个空格,因此我们在内循环中添加一个空格end = " "

end表示打印完最后一个值需要添加的字符串,用来设定输出语句以什么结尾。

end = " ":end引号中有1个空格,意思是输出完表达式后在输出一个空格。

for y in range(1,3):for x in range(1,y+1):print("%d*%d=%d" % (x, y , x*y),end = " ")# 内循环结束,输出一个换行print()

【终端输出】

1*1=1
1*2=2 2*2=4

6. 完成总代码

乘法口诀共有9行,外循环需要循环9次,y的取值范围为1到9。

for y in range(1,10):for x in range(1,y+1):print("%d*%d=%d" % (x, y, x*y),end = " ")# 内循环结束,输出一个换行print()

【终端输出】

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

46.for循环嵌套之九九乘法表相关推荐

  1. Python使用循环嵌套输出九九乘法表

    Python使用循环嵌套输出九九乘法表: 1x1=1 1x2=2 2x2=4 1x3=3 2x3=6 3x3=9 1. 首先输出9行,循环输出 i= 1 while i <= 9:print(i ...

  2. Java使用循环嵌套打印九九乘法表

    使用循环嵌套打印出九九乘法表. 写的非常简单: 缕清逻辑 简单一点就是 外层循环控制行数 内层循环控制列数 //此处注意对嵌套的理解,避免发生错误.for (int i = 1; i <= 9; ...

  3. 循环嵌套案例——九九乘法表

    打印输出九九乘法表: 在打印九九乘法表之前,先来看一个简单的循环嵌套案例: 打印 % %% %%% %%%% 在循环嵌套中,外层循环为行,内层循环为列. #include<iostream> ...

  4. 利用循环嵌套输出九九乘法表

    package demo10_24;public class 九九乘法表 {public static void main(String[] args) {int i,j;for(i=1;i<= ...

  5. 利用双重循环嵌套制作九九乘法表

    循环嵌套是指一个循环里面嵌套了一个循环 while循环实例: var str = "<table>";var row = 10;var col = 10;var i = ...

  6. Java技巧:用一个循环语句输出九九乘法表!

    同学们在进行编程学习的时候,输出九九乘法表应该是基础中的基础了,只要我们使用几个循环语句即可轻松实现,那么你有没有想过如果只用一个循环语句应该怎么实现呢? 分析:注意是使用一个循环语句来写,增加了逻辑 ...

  7. c语言用while循环输出九九乘法表,用C语言的while循环,打印九九乘法表

    用C语言的while循环,打印九九乘法表 用C语言的while循环: #include int main(void) { int row = 1; while (row <= 9) { int ...

  8. c语言编写while乘法表,用C语言的while循环,打印九九乘法表,

    用C语言的while循环,打印九九乘法表, 用C语言的while循环,打印九九乘法表 用C语言的while循环: #include int main(void) { int row = 1; whil ...

  9. Java只用一个循环语句输出九九乘法表

    同学们在进行编程学习的时候,输出九九乘法表应该是基础中的基础了,只要我们使用几个循环语句即可轻松实现,那么你有没有想过如果只用一个循环语句应该怎么实现呢? 分析:注意是使用一个循环语句来写,增加了逻辑 ...

最新文章

  1. Echarts柱状图的点击事件
  2. Mac OS X 10.9.3 Beta 8升级教程
  3. EXPRESS.JS再出发
  4. linux脚本硬盘,Linux mount挂载和卸载硬盘脚本分享
  5. 【poj1284-Primitive Roots】欧拉函数-奇素数的原根个数
  6. 排序算法专题-基数排序
  7. java面试erp项目经验_ERP项目经验总结
  8. 关于PMP考试的流程,很实用
  9. 中国计算机学会CCF推荐国际学术会议和期刊目录
  10. 夜的钢琴曲五—吉他指弹
  11. 台式电脑主板插线步骤图_台式机电源线接法图解(电脑主板接线图解高清图)...
  12. android源码定制之初探--定制android关机界面
  13. noip2011 观光公交 (贪心)
  14. 【FLASH】报错“必要的系统组件未能正常运行,请修复Adobe Flash Player”及 error#2046
  15. 计算机辅助设计绘图员一级,计算机辅助设计绘图员(AUTO CAD)中级证简介
  16. RAD Studio 11中文发布会录像
  17. 解决mysql 修改密码报错
  18. 百度竞价账户选对关键词究竟有多重要?如何进行关键词筛选
  19. 求大神指点---太乐了
  20. springboot实现excel文件下载的功能

热门文章

  1. ps校色调色/通道抠图
  2. Android 中Canvas的save(),saveLayer()和restore()解析
  3. PDOStatement::fetchAll
  4. DOM- 网页特效篇
  5. h5移动端判断浏览器类型
  6. HDMI转AV/S-Video单芯片方案/MS1836
  7. 本地生活O2O战略要领全解析
  8. phpcms 会员头像h5上传_使用elementui的头像上传组件报错
  9. android学习记录3:自定义状态栏颜色(android4.4以上)
  10. powershell:wsus清理已经下载的补丁