0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

什么是for循環(huán)嵌套之九九乘法表

汽車電子技術 ? 來源:安迪python學習筆記 ? 作者:安迪python學習筆記 ? 2023-02-23 11:51 ? 次閱讀
    1. 目標任務
    1. 完成第1行輸出
    1. 分析前3行規(guī)律
    1. 編寫第1行代碼
    1. 編寫前2行代碼
    1. 調整輸出格式
    1. 完成總代碼

1. 目標任務

本節(jié)的任務是利用for循環(huán)嵌套編寫九九乘法表。

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

怎樣才能輸出上面的九九乘法表呢?

在我們沒有思路的時候,我們先把任務拆分,然后試著找到編寫規(guī)律。

2. 完成第1行輸出

【目標任務】

原樣輸出1*1=1

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

【終端輸出】

1*1=1

不理解%d作用的需要先回看上一節(jié)《45.%占位符格式化處理》的內容。

【語法】

(要輸出的內容 % 要格式化的變量或數值)

"%d*%d=%d"是最后要輸出的內容的模板。

%是格式化占位符。

x, y , x*y是3個要格式化的變量,分別替換輸出模板中的%d.

2. 分析前3行規(guī)律

【輸出內容】

1*1=1

1*2=2 2*2=4

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

【分析規(guī)律】

第1行:x=1,y=1

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

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

我們發(fā)現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(tǒng)結束,且兩個數之間差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循環(huán)來取值。

y在每一行都是固定的,因此我們可以把y寫成for循環(huán)的外循環(huán)。

x每次都是從1開始,到等于y值結束,因此x要寫成for循環(huán)的內循環(huán)。

同樣先完成第一行代碼的編寫。

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,外循環(huán)的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. 調整輸出格式

觀察輸出結果,發(fā)現輸出的格式和我們要的不一樣。

再觀察九九乘法表,我們發(fā)現每一行輸出以后都有一個換行。

因此在每一次內循環(huán)執(zhí)行完畢后我們都添加一個換行print( )。

因為每1行的2個表達式之間都有一個空格,因此我們在內循環(huán)中添加一個空格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 = " ")
    # 內循環(huán)結束,輸出一個換行
    print()

【終端輸出】

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

6. 完成總代碼

乘法口訣共有9行,外循環(huán)需要循環(huán)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 = " ")
    # 內循環(huán)結束,輸出一個換行
    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-1九九乘法表

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯系本站處理。 舉報投訴
  • 循環(huán)
    +關注

    關注

    0

    文章

    92

    瀏覽量

    15947
  • 編寫
    +關注

    關注

    0

    文章

    29

    瀏覽量

    8425
  • for
    for
    +關注

    關注

    0

    文章

    44

    瀏覽量

    15784
收藏 人收藏

    評論

    相關推薦

    #硬聲創(chuàng)作季 059.嵌套循環(huán)練習_九九乘法表_打印表格數據

    編程語言python
    Mr_haohao
    發(fā)布于 :2022年08月25日 20:04:38

    #硬聲創(chuàng)作季 20循環(huán)經典案例九九乘法表

    編程語言python經典
    Mr_haohao
    發(fā)布于 :2022年08月26日 13:49:29

    #硬聲創(chuàng)作季 #嵌入式C程序設計 226 循環(huán)嵌套_輸出九九乘法表

    嵌入式C程序
    發(fā)布于 :2022年12月19日 14:23:59

    Java語言基礎編程學習66-嵌套循環(huán)練習九九乘法表

    JAVA
    電子學習
    發(fā)布于 :2023年01月16日 14:02:11

    從零開始學Python Day3:17-循環(huán)嵌套打印九九乘法表

    python
    電子學習
    發(fā)布于 :2023年02月03日 16:28:05

    從零開始學Python Day3:25-for循環(huán)嵌套打印九九乘法表

    python
    電子學習
    發(fā)布于 :2023年02月03日 18:05:40

    53.Python教程:4.18 打印九九乘法表 #硬聲創(chuàng)作季

    python
    充八萬
    發(fā)布于 :2023年07月12日 00:55:18

    486 JavascriptJS語句 練習 九九乘法表

    編程語言函數代碼
    充八萬
    發(fā)布于 :2023年07月26日 01:09:54

    九九乘法表

    基于LabVIEW的九九乘法表
    發(fā)表于 06-18 11:38

    基于LabVIEW的九九乘法表

    發(fā)表于 12-23 16:42

    如何利用Linux邏輯文件系統(tǒng)去設計一種九九乘法表

    Linux下的邏輯文件系統(tǒng)有何功能?如何利用Linux邏輯文件系統(tǒng)去設計一種九九乘法表呢?
    發(fā)表于 12-23 09:22

    使用英特爾數學核心函數庫優(yōu)化三重嵌套循環(huán)矩陣乘法

    我們使用英特爾?數學核心函數庫(MKL)在Linux *上優(yōu)化了三重嵌套循環(huán)矩陣乘法的版本。
    的頭像 發(fā)表于 11-07 06:04 ?3565次閱讀

    使用PHP語言編寫的九九乘法表程序資料說明

    本文檔的主要內容詳細介紹的是使用PHP語言編寫的九九乘法表程序資料說明。
    發(fā)表于 02-20 11:12 ?2次下載
    使用PHP語言編寫的<b class='flag-5'>九九乘法表</b>程序資料說明

    使用C語言寫出的九九乘法表

    本文檔的主要內容詳細介紹的是使用C語言寫出的九九乘法表資料合集免費下載。
    發(fā)表于 07-10 08:00 ?1次下載