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

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

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

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

資源簡介

(共20張PPT)
python
可以復用的代碼
2.4
項目導入
活動1 用自定義函數實現火柴棒擺數字問題
有6根火柴棒, 列出所有能擺出的自然數, 要求火柴棒正好用完。
思考,利用6根火柴棒能夠列出的最大數字是多少呢?
6根
2根
5根
5根
4根
5根
6根
3根
7根
6根
窮舉法(一個一個去判斷)
~
火柴棒擺數字問題
算法分析
1.數字“1”需要的火柴棒最少,所以能擺出的自然數最大是111
2.計算0和111之間的所有數字,統計需要的火柴棒
3.只要是恰好需要6根火柴棒的直接輸出。
算法流程圖描述
如何計算?103需要幾根?
把每個數位上的數字所需要的火柴棒數加起來。
火柴棒擺數字問題
將其轉化成流程圖畫在圖2.4.3中
火柴棒擺數字問題
如何讓計算機找出這個數字中的所有個位數呢?
(1)想一想,如果我們想得到“103”的個位上的“3”,哪種運算可以實現?除、整除還是取模?
103%10=3
(2)想一想,如何得到“103”的十位上的“0”,哪種運算可以實現?除、整除還是取模?
(3)想一想,如何得到“103”的百位上的“1”,哪種運算可以實現?除、整除還是取模?
103//10=10
10//10=1
10%10=0
x = num % 10
num = num // 10
num = 103
x = num % 10
num = num // 10
x = num % 10
1%10=1
f = [6,2,5,5,4,5,6,3,7,6]
total = f[x]
total = total+f[x]
total = total+f[x]
火柴棒擺數字問題
實現方法:
1.將這個數除以10求余(取模),求得個位數;
2.將這個數除以10取整數
3.重復第1和第2步驟,直到這個數為0
編寫代碼:
num = int(input(“請輸入0-111之間的任意數字”))
(x
x = num % 10
f = [6,2,5,5,4,5,6,3,7,6]
total = total+f[x]
num = num // 10
火柴棒擺數字問題
x=num%10
total=total+f[x]
輸出total
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)
用自定義函數實現火柴棒擺數字問題
6
sum = 6
i = 0
while(i<=111):
if(Match_num(i)==sum):
print(i)
i = i + 1
else:
i=i+1
函數
用戶自定義函數
函數庫中的標準函數,是Python提供給用戶的一系列已經編好的程序。如:
用戶根據需要編寫的一段程序
系統函數
把某個功能的代碼封裝到一個代碼塊中,用來為某個重復使用的功能做調用的一個代碼塊。
函數類型:
def 函數名(參數):
#函數說明
語句或語句組
return 返回值
參數是用來向函數傳遞值的,當有多個參數時,各個參數之間用逗號隔開。
函數執行完后,由return語句將表達式值返回給調用者,結束函數
例如:def 函數名(參數1,參數2……):
定義函數的基本格式:
函數定義與調用
函數的調用:指函數定義以后,在代碼的其他地方使用函數的動作
函數的調用形式是函數名(參數)
這個函數用來求n!
在遇到函數的調用語旬factorial(4)時, 轉到函數中的第一行代碼開始執行。
函數運行時,變量n會被賦值為4。
函數執行完成返回變量s的值即24,
然后回到語句total = factorial(4),
將返回值賦給變量 total, 最后輸出。
鞏固練習
下列代碼的輸出結果是 ?
def sum(a,b):
c=a+b
return c
print(sum(4,5))
9
用自定義函數實現火柴棒擺數字問題
def Match_num(num):
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
6
sum = 6
i = 0
while(i<=111):
if(Match_num(i)==sum):
print(i)
i=i+1
else:
i=i+1





發布代碼
任務二 發布共享代碼實現火柴棒擺數字問題
首先做好發布前的準備工作。在D:\創建一個文件夾mymodule, 其中包含mymodule.py和setup.py兩個文件。
mymodule.py是一個模塊文件, 其內容就是match_num函數。setup.py文件包含有關發布的元數據。
請將 “計算一個數字需要多少 根火柴棒" 的函數match_num轉換為模塊 , 然后發布。
def Match_num(num):
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
from distutils.core import setup
setup(
name='mymodule’, #參數一定要與mymodule.py文件名相同
version='l.0.0’, #版本號
#參數一定要與mymodule.py文件名相同
py_modules=['mymodule’],
author='yd’, #作者
author_email='yd@’ ,#作者郵箱
#代碼功能描述
description='計算一個數字需要多少根火柴棒',

構建發布文件
然后打開mymodule所在的目錄,構建發布文件。 最后將發布文件安裝到你的Python本地副本中。 安裝完成后, mymodule文件夾包含了如圖2.4.4所示的文件。
將發布安裝在你的python的本地副本中
導入并使用模塊
導入語句 import mymodule
調用模塊內的函數時用 mymodule.match_num(參數) 來實現。
發布代碼操作
習題講解
已知圖中各邊長,求多邊形的面積
math模塊中定義了sqrt(求平方根)函數
鞏固提升
def shengxiao(year):
animal=[“鼠”,”牛” ,”虎” ,”兔” ,”龍” ,”蛇” ,”馬” ,”羊” ,”猴” ,”雞” ,”狗” ,”豬”]
index=(myyear-1972)%12
return index
myyear = int(input(“請輸入你的出生年份”))
while myyear!=0:
print(shengxiao(myyear))
請編寫程序,實現輸入一個人的出生年份(>=1900),輸出他的生肖
小結
python
THANK
YOU

展開更多......

收起↑

資源預覽

    <track id="r4fhd"></track>

    <pre id="r4fhd"><abbr id="r4fhd"><code id="r4fhd"></code></abbr></pre>
      <ul id="r4fhd"></ul>

        <menu id="r4fhd"></menu>
        1. 主站蜘蛛池模板: 神农架林区| 平阴县| 乳源| 喀喇| 汤原县| 施秉县| 青冈县| 桐柏县| 岚皋县| 滦南县| 葵青区| 蓝山县| 兴国县| 济南市| 北川| 永顺县| 蓬溪县| 蕉岭县| 于都县| 谷城县| 依安县| 饶平县| 长治市| 桓台县| 百色市| 淳化县| 台东市| 辛集市| 伊吾县| 车险| 镇宁| 山丹县| 岑巩县| 紫金县| 隆林| 蓬安县| 淮安市| 华池县| 鄱阳县| 静海县| 抚顺县|