中文字幕精品无码一区二区,成全视频在线播放观看方法,大伊人青草狠狠久久,亚洲一区影音先锋色资源

2.4可以復用的代碼(第1課時) 課件(共34張PPT) 2023—2024學年教科版(2019)高中信息技術必修1

資源下載
  1. 二一教育資源

2.4可以復用的代碼(第1課時) 課件(共34張PPT) 2023—2024學年教科版(2019)高中信息技術必修1

資源簡介

(共34張PPT)
2.4 可以復用的代碼 (第1課時)
學習內容
一、編程解決復雜問題的思想與方法
二、函數的定義與調用
三、使用函數解決問題
一、計算機解決問題的一般過程
知識回顧
二、算法的三種基本結構
順序結構
分支結構
循環結構
小挑戰
有6根火柴棒,列出所有能擺出的自然數,要求火柴棒正好用完。
小挑戰
6, 2, 5, 5, 4, 5, 6, 3, 7, 6 根火柴棒
有6根火柴棒,列出所有能擺出的自然數,要求火柴棒正好用完。
小挑戰
6, 2, 5, 5, 4, 5, 6, 3, 7, 6 根火柴棒
6根火柴可以擺出最小的自然數是( 0 )?
6根火柴可以擺出最大的自然數是( 111 )?
有6根火柴棒,列出所有能擺出的自然數,要求火柴棒正好用完。
小挑戰
有6根火柴棒,列出所有能擺出的自然數,要求火柴棒正好用完。
snum=6
print("你可以拼出這些數字: ") for i in range(112):
if
== snum :
print ( i )
i 需要的火柴棒數
range(0 , 112 , 1)
0≤i<112
小挑戰
有6根火柴棒,列出所有能擺出的自然數,要求火柴棒正好用完。
有6根火柴棒,列出所有能擺出的自然數,要求火柴棒正好用完。
print ( i )
小挑戰
細化問題:如何計算一個自然數需要的火柴棒總數?
snum=6
print("你可以拼出這些數字: ") for i in range(112):
if
== snum :
i 需要的火柴棒數
小挑戰
有6根火柴棒,列出所有能擺出的自然數,要求火柴棒正好用完。
細化問題:如何計算一個自然數需要的火柴棒總數?
=
例如:14需要多少根火柴棒?
下標
f = [ 6, 2, 5, 5, 4, 5, 6, 3, 7, 6 ]
1 4
f [ 4 ] 4
+
f [ 1 ] 2
6
求出每一位上(個位、十位......)的數所用的火柴棒數在相加。
小挑戰
有6根火柴棒,列出所有能擺出的自然數,要求火柴棒正好用完。
細化問題:如何計算一個自然數需要的火柴棒總數?
小挑戰
細化問題:如何計算一個自然數需要的火柴棒總數?
num=int(input(“請輸入一個數:“)) f=[6,2,5,5,4,5,6,3,7,6]
total=0
while (num>0):
x=num % 10 total=total+f[x] num=num//10
print(total)
# 輸入一個自然數
# 0-9的數字分別需要多少根小棒
# 火柴棒總數變量賦初值
# 取num的個位數
# 所需火柴棒數累加
# 去掉num的個位
有6根火柴棒,列出所有能擺出的自然數,要求火柴棒正好用完。
小挑戰
有6根火柴棒,列出所有能擺出的自然數,要求火柴棒正好用完。
細化問題:如何計算一個自然數需要的火柴棒總數?
num=int(input(“請輸入一個數:“))
f=[6,2,5,5,4,5,6,3,7,6]
total=0
while (num>0):
x=num % 10 total=total+f[x] num=num//10
print(total)
測試數據:14,108,0
小挑戰
有6根火柴棒,列出所有能擺出的自然數,要求火柴棒正好用完。
細化問題:如何計算一個自然數需要的火柴棒總數?
num=int(input(“請輸入一個數:“))
f=[6,2,5,5,4,5,6,3,7,6]
total=0
while (num>0):
x=num % 10 total=total+f[x] num=num//10
print(total)
測試數據:14,108,0
小挑戰
有6根火柴棒,列出所有能擺出的自然數,要求火柴棒正好用完。
細化問題:如何計算一個自然數需要的火柴棒總數?
num=int(input(“請輸入一個數:“)) f=[6,2,5,5,4,5,6,3,7,6]
if num==0:
total=f[0] else:
total=0 while (num>0):
x=num % 10 total=total+f[x] num=num//10
print(total)
測試數據:0,50,100
# 判斷輸入數字為0時的特殊情況
有6根火柴棒,列出所有能擺出的自然數,要求火柴棒正好用完。
面對一些復雜的問題,可以采用自頂向下、逐步細化的方法
編程解決復雜問題的思想與方法
面對一些復雜的問題,可以采用自頂向下、逐步細化的方法
有6根火柴棒,列出所有能擺出的自然數,要求火柴棒正好用完。
編寫代碼時,可以運用函數實現化繁為簡、分而治之。
if
== snum :
print ( i )
i需要的火柴棒數
snum=6
print("你可以拼出這些數字: ") for i in range(112):
num=int(input(“請輸入一個數: “))
f=[6,2,5,5,4,5,6,3,7,6]
if num==0:
total=f[0] else:
total=0 while (num>0):
x=num % 10 total=total+f[x] num=num//10
print(total)
#求解一個自然數需要的火柴棒總數
編程解決復雜問題的思想與方法
函數
函數可分為系統函數和用戶自定義函數兩種類型。系統函數即函數庫中的標準函數。
在前面單元使用過的print()和input()函數都是系統函數。
自定義函數基本格式:
def 函數名(參數): #函數說明
語句或語句組(函數體)
return 返回值
參數是用來向函數傳遞值的,當有多個參數時, 各 個參數之間用逗號分隔開。
函數執行完成后,由return語句將表達式值返回給調用者,結束函數。
函數的調用采用函數名(參數)的方式。
數學運算類函數;數據轉換類函數;字符串操作類函數;輸人輸出函數;文件操作類函數;其他類函數。
函數的定義與調用
print(total)
#求解一個自然數需要的火柴棒總數
定義函數
函數名
參數
def match_num(num):
num=int(input(“請輸入一個數: “)) f=[6,2,5,5,4,5,6,3,7,6]
if num==0:
total=f[0] else:
total=0 while (num>0):
x=num % 10 total=total+f[x] num=num//10
return total
返回值
函數體
案例分析:用自定義函數求n!
def factorial(n): #自定義函數名為factorial,有一個參數為n
s=1
for i in range(2,n+1):
s=s*i
return s #函數返回值為 s
#調用factorial函數
total=factorial(4)
print(total)
print(total)
#求解一個自然數需要的火柴棒總數
def match_num(num):
num=int(input(“請輸入一個數: “)) f=[6,2,5,5,4,5,6,3,7,6]
if num==0:
total=f[0] else:
total=0 while (num>0):
x=num % 10 total=total+f[x] num=num//10
return total
#主程序
snum=6
print("你可以拼出這些數字: ") for i in range(112):
if match_num( i ) == snum : print ( i )
函數的定義與調用
三、調用函數
通過函數名即可調用函數
先聲明、后調用
參數傳遞要對應
測試程序:
練習:求解 1! + 2! + 3! + 4! ……+ 100!
(可參照課本P42)
運用函數解決問題
調用函數
自定義函數
【運行結果】
ü代碼復用
ü模塊化設計
一、面對一些復雜的問題,可以采用自頂向下、逐步細化的方法二、編寫代碼時,可以用函數實現化繁為簡、分而治之
三、運用函數解決問題,必須先定義再調用
本課小結
自定義函數
主程序
疑問一:程序遇到函數時執行過程是怎樣的?
有6根火柴棒,列出所有能擺出的自然數,要求火柴棒正好用完。
疑問二:定義函數和調用函數的參數有什么不同?
定義函數match_num(num)中的num為形參調用函數match_num( i )中的 i 為實參
多個參數時形參與實參的個數和順序,必須保持一致,每個參數之間用逗號隔開。參數也可以沒有,但括號不能省略。
有6根火柴棒,列出所有能擺出的自然數,要求火柴棒正好用完。
【范例程序】
def plus( a, b ):
# 自定義函數求2個參數的和
s = a + b
return s
# 調用plus函數 total = plus( 10, 20 ) print (total)
形參
實參
返回結果
】?
【運行結果 30
有6根火柴棒,列出所有能擺出的自然數,要求火柴棒正好用完。
疑問二:定義函數和調用函數的參數有什么不同?
定義函數match_num(num)中的num為形參調用函數match_num( i )中的 i 為實參
退出函數return [參數] ,可以將結果返回給調用方。
多個參數時,每個參數之間用逗號隔開。如果沒有參數,則return語句返回None。
疑問二:定義函數和調用函數的參數有什么不同?
有6根火柴棒,列出所有能擺出的自然數,要求火柴棒正好用完。
求解 1! + 2! + 3! + 4! ……+ 100!
(可參照課本P42)
自定義函數
主程序
練習講解
求解 1! + 2! + 3! + 4! ……+ 100!
(可參照課本P42)
形參
實參
練習講解
求解 1! + 2! + 3! + 4! ……+ 100!
(可參照課本P42)
返回結果
練習講解
求解 1! + 2! + 3! + 4! ……+ 100!
(可參照課本P42)
【運行結果】
練習講解

展開更多......

收起↑

資源預覽

<pre id="tfb94"><li id="tfb94"></li></pre>

<bdo id="tfb94"><rt id="tfb94"></rt></bdo>
  • <menu id="tfb94"><dl id="tfb94"></dl></menu><i id="tfb94"><acronym id="tfb94"><sub id="tfb94"></sub></acronym></i>

    1. 主站蜘蛛池模板: 海兴县| 冷水江市| 县级市| 大渡口区| 江口县| 南汇区| 晋宁县| 平果县| 定州市| 奈曼旗| 田林县| 鲁山县| 临邑县| 霍林郭勒市| 日土县| 团风县| 乐山市| 恩施市| 武夷山市| 桐城市| 南涧| 常宁市| 黑河市| 呼图壁县| 郑州市| 财经| 邯郸市| 滕州市| 义马市| 麻栗坡县| 公主岭市| 武宁县| 四会市| 甘泉县| 兴仁县| 新乡县| 新巴尔虎右旗| 神池县| 增城市| 东乌| 岳阳市|