資源簡介 (共17張PPT)算法設計前 言性質:1、隨機在正方形里撒一把豆子,每一顆豆子落在正方形內任何一點的可能性都是相等的。2、落在每個區域中的豆子數與這個區域的面積近似成正比。請同學們討論出投點法求圓周率的算法:導入新課隨機投點法1. 整型(Integer):整型數據類型用來表示整數,可以是正數、負數或零。不同編程語言中的整型數據類型可能有不同的范圍和長度,如C語言中的int類型,Java中的int類型等。數值數據類型2. 浮點型(Float/Double):浮點型數據類型用來表示帶有小數部分的數值。浮點型數據類型通常包括單精度浮點型(float)和雙精度浮點型(double),不同編程語言中的浮點型數據類型可能有不同的精度和范圍。數值數據類型3.字符型(Character):字符型數據類型用來表示單個字符,可以是字母、數字、符號等。不同編程語言中的字符型數據類型可能有不同的表示方式,如C語言中的char類型,Java中的char類型等。數值數據類型4.字符串型(String):字符串型數據類型用來表示一串字符組成的文本,可以是字母、數字、符號等。字符串型數據類型通常用來處理文本數據,不同編程語言中的字符串型數據類型可能有不同的表示方式和操作方法。數值數據類型5. 布爾型(Boolean):布爾型數據類型用來表示真(True)或假(False)的值。布爾型數據類型通常用來進行邏輯判斷和條件控制,不同編程語言中的布爾型數據類型可能有不同的表示方式,如C語言中的bool類型,Java中的boolean類型等。數值數據類型6. 數組(Array):數組是一種可以存儲多個相同類型數據的集合。數組的元素可以通過索引訪問,索引從0開始。不同編程語言中的數組可能有不同的表示方式和操作方法。數值數據類型darts為投放的總豆子數;hits為落在扇形內的豆子數。hits/darts≈ S扇形/S正方形圓周率π=S圓/R2π=4×S扇形/S正方形≈4×hits/darts新課講解如何模擬投豆子的過程?隨機函數random() random() 方法返回隨機生成的一個實數,它在[0,1)范圍內需要導入 random 模塊range()函數控制循環分析問題設計算法算法:1.輸入總的投點數darts;2.令hits=0;3.循環i從0到darts-1,step1;3.1 獲取x,y的隨機值;3.2 如果,則hits增加1;4.計算圓周率的近似值;5.輸出圓周率的近似值。流程圖:hits=hits+1任務:1、請同學們完成教材p97的空白代碼2、編寫并運行、調試程序。3、觀察投點數分別為1000和5000的區別編寫、調試程序思考與討論:1、分別輸入 1000、5000、得到圓周率的近似值分別可以精確到第幾位?2、多次輸入同樣的總投點數 1000,會得到不同 的結果,這是為什么?如何減少這種不確定性?1000點的效果圖5000點的效果圖思考與討論小結:1、使用投點法求圓周率的原理;2、使用循環和隨機函數模擬投點過程;3、投點數的不同得到圓周率的精度不同。課堂小結圓周率到底有沒有盡頭?科學家一直沒有停止對它的探索,現在人類借助計算機已經將圓周率精確計算到62.8萬億位小數,但這仍然不是它的終點,有人說如果圓周率能夠被算盡,或許我們目前學的所有科學知識都會被推翻,這將是非??植赖氖虑?;同學們在學習過程中也要像圓周率一樣,從不停歇,永無止境,活到老學到老,不斷提升自我,超越自我!結語謝謝觀看 展開更多...... 收起↑ 資源預覽 縮略圖、資源來源于二一教育資源庫