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

項目七 用計算機計算圓周率——比較不同算法的實現及效率 課件(共24張PPT)+教案+導學案+練習題+素材

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

項目七 用計算機計算圓周率——比較不同算法的實現及效率 課件(共24張PPT)+教案+導學案+練習題+素材

資源簡介

《用計算機計算圓周率》學案
一、學習目標
學會while及for循環之間的轉換;
掌握圓周率的兩種不同計算方法,并能用Python編程實現;
比較兩種算法的運行效率及精確度,知道如何分辨算法的性能。
二、重點難點
教學重難點:掌握圓周率的兩種不同計算方法,并能用Python編程實現。
三、學習方法及模式
自主探究、協作學習、合作交流等;
學習內容
預備知識:
選擇結構流程圖:
循環結構流程圖:
活動一:使用沃利斯公式計算圓周率:
小組合作填寫流程圖:
說明:先設置變量item統計一共計算到第幾項,x表示每一項的分子,y代表每一項的分母,s代表二分之一π。
仔細分析,我們可以發現,當項數為奇數項時,分子x按2遞增,而項數為偶數項時,分母y按2遞增。
請同學們完成如下流程圖:
參考流程圖,完善如下程序,并復制到Python中運行調試:
活動二:對比兩種計算圓周率算法的效率。
用數學公式計算:
用隨機投點計算:
將上面兩種不通算法實現的程序復制到Python中運行,填寫下表:
改寫數學公式法程序,輸入精確度要求,并輸出運行時間。多次運行程序,改變
limit
的值,得到不同的圓周率近似值,記錄每次的運行結果。
limit
pi
的值
準確的小數位數
運行時間(秒)
0.0001
3.1320765318091053
1
0.008484839644298251
0.00001
改寫隨機投點法程序,輸出運行時間。多次運行程序,改變總投點數,得到不同的圓周率近似值,記錄每次的運行結果。
item
pi
的值
準確的小數位數
運行時間(秒)
1000
3.196
1
0.0936006
10000
對比兩種算法計算圓周率的運行情況,填寫下表。
算法比較項目
數學公式法
隨機投點法
計算結果的精確度
□較高
□較低
□較高
□較低
程序運行時間
□較長
□較短
□較長
□較短
對算法的理解
□容易理解
□不易理解
□容易理解
□不易理解
課堂總結:
圓周率
π
是一個無限不循環小數,無論是用數學公式計算,還是用隨機投點法計算,本質上都是對
π
的精確值的無限逼近。選擇合適的計算方法,并設計出高效的算法,正是用計算機解決類似問題的一般思路。
課后探究活動:
編程實現Leibniz定理計算圓周率:(共24張PPT)
導入:
—比較不同算法的實現及效率
用計算機計算圓周率
項目學習目標
在本項目中,我們將對用計算機計算圓周率一探究竟,利用Python
語言編程實現兩種計算圓周率的算法,進而掌握利用程序控制結構編程的方法,并感受不同算法的運行效率。
知識復習:
問題:
1.
順序結構編程的特點是?
2.
選擇結構的流程圖有哪幾種?
3.
循環結構的流程圖?
新課學習一
項目活動一
新課學習二
項目活動二
復習引入
總結提升
知識復習:
2.
選擇結構的流程圖有哪幾種?
新課學習一
項目活動一
新課學習二
項目活動二
復習引入
總結提升
條件
語句塊


條件
語句塊
語句塊


知識復習:
3.
循環結構的流程圖有哪幾種?
新課學習一
項目活動一
新課學習二
項目活動二
復習引入
總結提升
1.設計算法實現:用數學公式計算
1735
年,數學家歐拉得到了如下計算公式:
如何編程求出圓周率?
新課學習一
項目活動一
新課學習二
項目活動二
復習引入
總結提升
算法分析
賦初值:item=1
結束條件:
怎么寫?
計算:s+=1/(item
2)
改變循環控制的值:item+=1
思考結束條件:
1.我們是計算到1000
000項結束?
2.還是讓累加項的值小于
0.000
001來結束?
item<=1000000
1/(item
2)>=0.000001
新課學習一
項目活動一
新課學習二
項目活動二
復習引入
總結提升
Python語言實現
賦初值:item=1
結束條件:1/(item
2)>=
0.000001
計算:s+=1/(item
2)
改變循環控制的值:item+=1
思考及改寫程序:
1.輸出項值<0.000001時item的值。
2.如何實現計算到1000
000項結束?
3.請用for語句改寫程序,實現同樣的功能。
新課學習一
項目活動一
新課學習二
項目活動二
復習引入
總結提升
項目活動一:小組合作探究
使用沃利斯公式計算圓周率:
如何編程求出圓周率?
項目活動一
新課學習二
項目活動二
復習引入
總結提升
新課學習一
流程圖填空

?
條件:item%2==1
?
條件:
?
初始化:item=1
x=0
y=1
s=1
?
?
改變分子的值:x+=2
?
改變分母的值:
?

?
?
計算圓周率:s
=x/y

?
項數增加:item+=1
?
輸出圓周率:print(2
s)

?
item<=1000000
y+=2
項目活動一
新課學習二
項目活動二
復習引入
總結提升
新課學習一
參考程序
賦初值:item=1
結束條件:item<=1000000
計算
改變循環控制的值:item+=1
項目活動一
新課學習二
項目活動二
復習引入
總結提升
新課學習一
2.設計算法實現:用隨機投點法計算
隨機投點法是通過在正方形內隨機投點,用隨機模擬的方法來估算圓周率。
如何編程求出圓周率?
π/4=s落在扇形內的點的個數/s落在矩形內的點的個數
新課學習二
項目活動二
復習引入
總結提升
新課學習一
項目活動一
算法分析
思考與討論:
1.
分別輸入1000、5000、10000,得到圓周率的近似值分別可以精確到第幾位?
2.
多次輸入同樣的總投點數1000,會得到不同的結果,這是為什么?如何減少這種不確定性?
新課學習二
項目活動二
復習引入
總結提升
新課學習一
項目活動一
項目活動二:小組合作探究
1.用數學公式計算
對比兩種計算圓周率算法的效率。
2.用隨機投點法計算
新課學習二
項目活動二
復習引入
總結提升
新課學習一
項目活動一
算法分析
用數學公式計算
用隨機投點法計算
運行兩種方法計算圓周率運行效率,完成學案上的活動二中的表格。
新課學習二
項目活動二
復習引入
總結提升
新課學習一
項目活動一
算法分析
用數學公式計算
limit
pi
的值
準確的小數位數
運行時間(秒)
0.0001
3.1320765318091053
1
0.008484839644298251
0.00001
新課學習二
項目活動二
復習引入
總結提升
新課學習一
項目活動一
算法分析
用隨機投點法計算
item
pi
的值
準確的小數位數
運行時間(秒)
1000
3.196
1
0.0936006
10000
新課學習二
項目活動二
復習引入
總結提升
新課學習一
項目活動一
兩種算法比較
算法比較項目
數學公式法
隨機投點法
計算結果的精確度
□較高
□較低
□較高
□較低
程序運行時間
□較長
□較短
□較長
□較短
對算法的理解
□容易理解
□不易理解
□容易理解
□不易理解
新課學習二
項目活動二
復習引入
總結提升
新課學習一
項目活動一
課堂總結
圓周率
π
是一個無限不循環小數,無論是用數學公式計算,還是用隨機投點法計算,本質上都是對
π
的精確值的無限逼近。選擇合適的計算方法,并設計出高效的算法,正是用計算機解決類似問題的一般思路。
新課學習一
項目活動一
新課學習二
項目活動二
復習引入
總結提升
思維導圖
新課學習一
項目活動一
新課學習二
項目活動二
復習引入
總結提升
課后拓展活動
使用Leibniz定理計算圓周率:
參考程序
賦初值:item=1
結束條件:item<=1000000
計算:s+=f/item
f=-f
改變循環控制的值:item+=2
課后拓展活動
THANKS用計算機計算圓周率
——比較不同算法的實現及效率
一、案例背景信息
1、模塊:高中信息技術。
2、年級:高一年級。
3、所用教材版本:新課程教材。
4、學時數:1課時,40分鐘,其中上機時間:20分鐘,非上機操作時間:20分鐘。
二、教學設計
(一)內容分析
1、本節的作用和地位:
本節內容是信息技術必修第三單元《算法和程序設計》中的項目七:用計算機計算圓周率。本節的內容主要是讓學生在復習順序、選擇結構的程序設計基礎上,學會利用循環實現圓周率的計算,并讓學生體會不同算法的程序的計算速度及算法的效率。
2、本節主要內容:
圓周率的兩種不同算法實現及效率比較。
(二)學生分析
知識基礎:
學生在前面單元的學習中已經掌握了Python的順序結構、選擇結構及循環結構的語法。
能力基礎:
學生能用Python三種結構編寫簡單的程序。
心理基礎:
學生對計算機編程有著良好的興趣。
(三)教學目標
(1)學會while及for循環之間的轉換;
(2)掌握圓周率的兩種不同計算方法,并能用Python編程實現;
(3)比較兩種算法的運行效率及精確度,知道如何分辨算法的性能。
(四)教學重點、難點:
教學重點:
掌握圓周率的兩種不同計算方法,并能用Python編程實現;
教學難點:
掌握圓周率的兩種不同計算方法,并能用Python編程實現;
(五)教學策略設計
教學方法設計
教法:問題導學法、活動驅動法
學法:自主探究法、協作探究法
教學流程和教學活動的設計思路
情境設置
從圓周率的計算歷程視頻入手,激發學生嘗試計算圓周率的興趣,帶領學生一起進入教學活動環節,讓學生親自體驗圓周率的不同計算方法。
項目活動一:使用沃利斯公式計算圓周率
小組協作,通過參考案例,修改程序完成使用沃利斯公式計算圓周率。
項目活動二:對比兩種計算圓周率算法的效率。
運行兩種算法程序,填寫三個表格,完成算法效率的分析。
課后探究活動:其他算法實現圓周率
在課堂的基礎上,繼續探究實現圓周率的算法,真正掌握利用計算機解決學習生活中的問題,加強對本節課知識的應用拓展。
教學資源:
對學生基本技術要求:計算機的基本操作、能使用記事本、Word等。
硬件:局域網(可連接到因特網)。
軟件:Windows操作系統 Word或記事本、網絡多媒體教室。
資源:課件、程序、視頻等。
三、教學過程
教學環節及時間安排
教師活動
學生活動
對學生學習過程的觀察和考查
及設計意圖
情境
導入
3’
教師播放視頻:
數學家是如何計算π的?
觀看視頻,形成概念
通過對π的發展史,了解π的多種計算方法。
知識
復習
3’
復習引入問題:
順序結構編程的特點是?
2.
選擇結構的流程圖有哪幾種?
3.
循環結構的流程圖?
回答問題
溫故知新
復習Python的三種基礎語法,為新授課做準備。
算法1
引入
2’
教師展示新課一的學習內容:
設計算法,用數學公式計算π
觀看試題
開始思考
試題引入
幫助學生形成初步的算法概念。
算法分析與程序實現4’
引導學生分析流程圖,并寫出程序
回答問題
一起完成程序
組織課堂活動,引導學生自主學習,學會總結。
課堂
活動1
8’
項目活動一
小組合作探究
使用沃利斯公式計算圓周率:
教師進行巡視觀察學生的學習活動,并對有疑問的學生的問題進行單獨解答。
小組合作探究
完成學案活動1的流程圖與程序填空
并運行調試
自主體驗
完成算法的程序實現。
學會自己編寫程序。
算法2
引入
2’
教師展示新課二的學習內容:
用隨機投點法計算
隨機投點法是通過在正方形內隨機投點,用隨機模擬的
方法來估算圓周率。
觀看試題
開始思考
試題引入
幫助學生形成完整的算法概念。
算法分析與程序實現6’
引導學生分析流程圖,并程序填空
思考與討論:
1.
分別輸入1000、5000、10000,得到圓周率的近似值分別可以精確到第幾位?
2.
多次輸入同樣的總投點數1000,會得到不同
的結果,這是為什么?如何減少這種不確定性?
回答問題
一起完成程序
組織課堂活動,引導學生自主學習,學會總結。
課堂
活'動2
8’
項目活動二
對比兩種計算圓周率算法的效率。
用數學公式計算:
用隨機投點法計算:
兩種算法比較:
教師進行巡視觀察學生的學習活動,并對有疑問的學生的問題進行單獨解答。
協作學習,合作探究完成三個表格
比較算法效率,了解算法運行的時間成本及算法的精確度。
課堂回答及小結
3’
課堂小結:
1.圓周率
π
是一個無限不循環小數,無論是用數學公式計算,還是用隨機投點法計算,本質上都是對
π
的精確值的無限逼近。選擇合適的計算方法,并設計出高效的算法,正是用計算機解決類似問題的一般思路。
2.思維導圖
學生回答并總結
從數據分析中得出算法效率。
并回顧整個課堂的學習內容,形成知識體系。
課后
拓展
1’
使用Leibniz定理計算圓周率:
認真思考,課后實現。
前后呼應,與視頻中提到的算法相呼應。讓學生學會利用編程解決學習生活中的問題。
教學反思
本節課的難點在于如何利用循環結構實現圓周率的計算,為了減輕難度,在活動一之前設置了一個例題,讓學生在完成活動一時可以參考例題程序進行修改,以讓大部分學生能達到良好的成功體驗效果。
同時通過運行兩個不同算法實現的圓周率的程序,讓學生深刻體驗到算法效率帶來的差異性,這種差異所帶來的效率不同可以引導學生應用到學習生活中去,追求高效的解決問題的意識素養。
本節課的內容內容較多,要讓學生達成良好的體驗效果,教師需隨時關注學生的學習過程,及時給予幫助,引導學生在體驗中提升總結,才能達到最佳的效果。
1項目七練習題:用計算機計算圓周率
【判斷題】:正確則標記“√”,錯誤則標記“×”。
python的程序基本結構有三種:順序、選擇、循環。(

以下代碼執行后,輸出結果是55。(

循環結構不允許出現死循環。(

【程序編寫】
編程實現輸出1,2,3,……100。
參考程序1:
參考程序2:
2.利用for循環求1~100之間所有數的和。
參考程序:
3.求
50!
參考程序:
4.利用for循環求1~1000之間所有奇數的和。
參考程序:
5.使用Leibniz定理計算圓周率:
參考程序:
6.求出10~1000之間的回文數。
參考程序1:
參考程序2:
7.求出100~1000之間所有的水仙花數。
參考程序:
算法
1.爺s=1
2.爺i=1
3.循環當i小于等于50;
3.1
s=Sxi
3.2i=1+1
1s=1
2
for
i
in
range(1,
51):
3
s=1
4
print(s)
1s=8
2
for
i
in
range(1,
1001):
3
11%2==1:
4
s+=1
5
print(s)
1s=0
2千=1
3
item=1
4
while
item<=1000000
567
s+=f/item
f=-千
item+=2
8
print
(4
s)
1
for
i
in
range(10,
1001):
s=str(i)
2345
s=s::
if
i==int
(s):
print(i)
1
for
i
in
range(10,
1001)
s
2345678
t=e
while
se
t=t米18+s%18
s=s//16
1千t==i:
print(i)
1
for
i
in
range(10,
1001):
23456789
t=8
while
se
X=s‰18
t+=xxx
s=s//18
1千t==i:
print(i
1s=9
2
for
i
in
range(1,10):
34
s
print(s)
開始

i≤50

s=S×1,1=1+
輸出s
結束
1s=8
2
for
i
in
range(1,
101):
3
s+=1
4
print(s)
算法
1.爺S=1
23
S=Sx1
s=s×2
51.s=s×59

展開更多......

收起↑

資源列表

<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. 主站蜘蛛池模板: 花莲市| 和静县| 沅江市| 定日县| 拉萨市| 贡觉县| 西畴县| 克拉玛依市| 磐石市| 宝坻区| 锦州市| 元谋县| 泰来县| 江安县| 什邡市| 阿拉善右旗| 安宁市| 广河县| 闽侯县| 宜宾市| 荔波县| 南木林县| 尚义县| 乡宁县| 读书| 越西县| 南康市| 恩施市| 抚远县| 岗巴县| 清流县| 清河县| 莱芜市| 尼玛县| 云和县| 九龙坡区| 岫岩| 财经| 陇南市| 拜泉县| 昌图县|