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

3.3解析算法&枚舉算法 課件(共27張PPT)2023—2024學年高中信息技術浙教版(2019)必修1

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

3.3解析算法&枚舉算法 課件(共27張PPT)2023—2024學年高中信息技術浙教版(2019)必修1

資源簡介

(共27張PPT)
3.3.1 解析算法
0.用算法解決問題的過程
抽象與建模
找到核心要素
得出計算模型
設計算法
明確輸入輸出
描述數據處理
編寫程序
用計算機程序語言描述,形成計算機程序
調試運行程序
關注語法錯誤
邏輯錯誤等
1.基本思想
【解析算法】
是指根據問題的前提條件與所求結果之間的關系,找出求解問題的數學表達式,并通過表達式的計算來實現問題的求解。
解題思路:
明確問題的前提條件
明確要求的解
找出前提條件與所求解之間關系的數學表達式
1.基本思想
【解題關鍵】
要確保數學表達式的正確性
在程序中正確描述該數學表達式。(python運算符的正確使用)
2. 實例分析
Q1:一個小球從高處自由落體落下,經過5秒后到達地面,已知重力加速度g為10m/s,請問小球從距離地面多高的地方落下?
1.抽象與建模
找到核心要素(問題的前提條件和要求的解)
得出計算模型
前提條件:
自由落體運動
時間為5秒,設為t
重力加速度g為10m/s,設為g
要求的解:
小球下落的高度,假設為h
根據自由落體運動:
h=1/2gt2
2. 實例分析
Q1:一個小球從高處自由落體落下,經過5秒后到達地面,已知重力加速度g為10m/s,請問小球從距離地面多高的地方落下?
2.設計算法
輸入數據
處理數據
輸出數據

h=1/2gt2
輸出h
輸入本金p
輸入期數t
輸出h
t=5
g=10
h=1/2gt2
2. 實例分析
Q1:一個小球從高處自由落體落下,經過5秒后到達地面,已知重力加速度g為10m/s,請問小球從距離地面多高的地方落下?
3.編寫程序
t=5
g=10
h=g*t**2/2
print(h)
輸入本金p
輸入期數t
輸出h
t=5
g=10
h=1/2gt2
2. 實例分析
Q2:判斷一個數是否是3和7的公倍數,請用程序實現上述功能。
1.抽象與建模
找到核心要素
得出計算模型
假設要判斷的數為 x
判斷條件:3和7的公倍數
3和7的公倍數
x%3==0 and x%7==0
x是公倍數或x不是公倍數
2.設計算法
輸入數據
處理數據
輸出數據
輸入x
x%3==0 and x%7==0
輸出x是公倍數或x不是公倍數
3.編寫程序
x=int(input(“請輸入一個數”))
if x%3==0 and x%7==0:
print(‘x是公倍數’)
else:
print(‘x不是公倍數’)
3. 課堂實戰
1.人口增長問題
2.設備價值問題
3.蔡勒公式
4.十進制轉二進制
5.二進制轉十進制
6.二進制轉十六進制
7.十六進制轉二進制
3. 課堂實戰
二進制轉十進制
n="011101"
res=0
for i in range(len(n)):
res=res*2+int(n[i])
十進制轉二進制
n=int(input())
res=""
while n>0:
res=str(n%2)+res
n=n//2
print(res)
3. 課堂實戰
十六進制轉十進制
n="A3"
dic={'0':0,'1':1,'3':3,'A':10}
res=0
for i in n:
res=res*16+dic[i]
print(res)
十進制轉十六進制
n=int(input())
res=""
g="0123456789ABCDEF"
while n>0:
res=g[n%16]+res
n=n//16
print(res)
3.3.2 枚舉算法
13
1.基本思想
【枚舉算法】
1.建立正確的數學模型,即得出正確的數學代數式
2.將數學代數式轉化為正確的python表達式
13
我手里有三把一模一樣的鑰匙,分別可以開教室、辦公室、寢室的門。當我晚上回到寢室,該如何找到能開寢室門的鑰匙呢?
每把都試一遍
14
一一列舉
逐一檢驗
分支
循環
枚舉
篩選
1.基本思想
15
不能遺漏任何一個正確解
盡可能地縮小解的列舉范圍,提高算法的效率
1.基本思想
【枚舉算法要注意的問題】
4. 課堂實戰
【Q0:例舉出300以內被7整除的所有的數,如何編程實現?】
列舉的范圍是什么?
檢驗的條件是什么?
列舉方式是什么?
n=0,1,2,···,300
被7整除的數:n%7==0
for循環
如何編程實現
for i in range(301):
if i%7==0:
print(i)
4. 課堂實戰
【Q1:編程推算單據中被涂抹數字】
有一張單據上有一個5位數的編號n,如圖所示,其千位數和十位數處已經變得模糊不清,但是知道這個5位數是23的倍數?,F要設計一個算法,找出所有滿足這些條件的5位數,并統計這些5位數的個數。
4. 課堂實戰
【編程推算單據中被涂抹數字】
列舉的范圍是什么?
檢驗的條件是什么?
列舉方式是什么?
千位的數:i=0,1,···,9
十位的數:j=0,1,···,9
被23整除:
(20506+i*1000+j*10)%23==0
雙重for循環,找出這些數并統計其個數count_1
4. 課堂實戰
【編程推算單據中被涂抹數字】
count =0
# 循環i
#循環j
t=20506+i*1000+j*10
if t % 23 == 0:
count+=1; print(t)
print(“這些5位數的個數為” ,count)
4. 課堂實戰
【編程推算單據中被涂抹數字】
count =0
for i in range(10): # 循環i
for j in range(10): #循環j
t=20506+i*1000+j*10
if t % 23 == 0:
count+=1; print(t)
print("這些5位數的個數為" ,count)
3. 課堂實戰
【Q2:編程推算水仙花數】
“水仙花數”是指一個三位自然數,其各位數字的立方和等于該數本身。編程輸出所有的水仙花數。
例如153是“水仙花數”,因為:153 = 13 + 53 + 33。
【Q2:編程推算水仙花數】
各位數字的立方和等于該數本身
列舉范圍是什么?
如何表示這個數?如何表示各位的數字?
3. 課堂實戰
【Q2:編程推算水仙花數】
列舉每個位上可能的數字
百位:i 十位:j 個位:k
三位數n=i*100+j*10+k
逐一檢驗可能的解,判斷條件是什么?
i : 1 ~ 9
j : 0 ~ 9
k : 0 ~ 9
n == i ** 3 + j ** 3 + k ** 3
3. 課堂實戰
24
【Q3:今有雉、兔同籠,上有三十五頭,下有九十四足。問:雉、兔各幾何?】
當雞為1的時候,兔子為1,滿足條件嗎?
當雞為1的時候,兔子為2,滿足條件嗎?
當雞為1的時候,兔子為3,滿足條件嗎?
……
當雞為2的時候,兔子為1,滿足條件嗎?
當雞為2的時候,兔子為2,滿足條件嗎?
當雞為2的時候,兔子為3,滿足條件嗎?
……
3. 課堂實戰
【Q3:今有雉、兔同籠,上有三十五頭,下有九十四足。問:雉、兔各幾何?】
雞x的取值范圍為 0~35
兔y的取值范圍為 0~35
在這個取值范圍內的所有x和y
判斷:如果 x、y滿足35個頭 94只腳
那么我們要求的x、y
3. 課堂實戰
初值
終值
【Q3:今有雉、兔同籠,上有三十五頭,下有九十四足。問:雉、兔各幾何?】
3. 課堂實戰
h = 35
f = 94
for x in range(0,36):
for y in range(0,36):
if x + y == 35 and 2 * x + 4 * y == 94 :
print(x,y)

展開更多......

收起↑

資源預覽

<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. 主站蜘蛛池模板: 文山县| 大丰市| 辽阳市| 阳山县| 吉木萨尔县| 南涧| 临汾市| 含山县| 建瓯市| 沅江市| 长岛县| 乌苏市| 宜都市| 黄陵县| 江阴市| 石门县| 焉耆| 大名县| 扎鲁特旗| 龙川县| 新安县| 正阳县| 金坛市| 昌平区| 上虞市| 武川县| 阿勒泰市| 新源县| 邻水| 旌德县| 万荣县| 清水县| 天水市| 临夏市| 锡林郭勒盟| 美姑县| 新田县| 霞浦县| 托克托县| 汾西县| 华坪县|