【正文】
根本沒有解析解的問題,蒙特?卡羅方法是一種有效的求出數(shù)值解的方法。一般蒙特?卡羅方法在數(shù)學中最常見的應用就是蒙特?卡羅積分。方法:蒙特卡羅方法的解題過程可以歸結為三個主要步驟:構造或描述概率過程;實現(xiàn)從已知概率分布抽樣;建立各種估計量。利用蒙特卡洛方法實現(xiàn)求解圓周率!/usr/bin/Python* coding:utf8 *import randomimport mathdef monteCarlo(N): i = 0 count = 0 while i = N: x = () y = () if pow(x, 2) + pow(y, 2) 1: count += 1 i += 1 pi = 4 * count / N print(pi)monteCarlo(1000000)【詳解】本題考查的知識點是Python程序。原理:通常蒙特?卡羅方法通過構造符合一定規(guī)則的隨機數(shù)來解決數(shù)學上的各種問題。對于那些由于計算過于復雜而難以得到解析解或者根本沒有解析解的問題,蒙特?卡羅方法是一種有效的求出數(shù)值解的方法。一般蒙特?卡羅方法在數(shù)學中最常見的應用就是蒙特?卡羅積分。方法:蒙特卡羅方法的解題過程可以歸結為三個主要步驟:構造或描述概率過程;實現(xiàn)從已知概率分布抽樣;建立各種估計量。利用蒙特卡洛方法實現(xiàn)求解圓周率!/usr/bin/Python* coding:utf8 *import randomimport mathdef monteCarlo(N): i = 0 count = 0 while i = N: x = () y = () if pow(x, 2) + pow(y, 2) 1: count += 1 i += 1 pi = 4 * count / N print(pi)monteCarlo(1000000)18.n=input(請輸入一個正整數(shù): ) n=int(n) For i in range(15,n+1,15)print(i)【詳解】本題考查的是Python循環(huán)語句。range函數(shù),第一個參數(shù)表示開始,第二個參數(shù)表示停止,第三個參數(shù)表示步長。print缺省的話默認是換行輸出。19.(A[i]) j len(B) klen(A)+len(B)1 A[i] B[j] 【詳解】本題主要考查python編程。根據(jù)表格所示,列表B中第5個元素為309,因此①處為309;A[i] B[j]時,將列表末尾添加A[i],因此②(A[i]);當列表未結束時,列表末尾添加相應元素,因此③處為j len(B);算法二中引入變量k,用以記錄i與j的和,當k小于len(A)+len(B)1說明兩列表未結束,因此④處為klen(A)+len(B)1;若A[i] B[j],則先將A[i] 添加至列表末尾,因此⑤處為A[i] B[j]?!军c睛】20.n*f(n1) range(1,n+1) s+f(i) 【詳解】本題主要考查Python程序的執(zhí)行與調(diào)試。①此處是定義遞歸函數(shù)f(n),由題干,當n=0時,返回1,否則返回n*f(n1),故此處填n*f(n1)。②用遞歸算法求1!+2!+……+n!,故變量i的范圍應是1—n,for i in range(1,n+1)表示i的范圍是[1,n],故此處填range(1,n+1)。③循環(huán)體實現(xiàn)累加,將每一項階乘f(i)加到s中,故此處填s+f(i)。21.b/(2*a) 【詳解】本題主要考查Python程序執(zhí)行與調(diào)試。①delta大于0,方程有兩個不同的解,delta等于0,方程有兩個相同的解,delta小于0,方程無解,故第一空填0。②delta=0,則方程有兩個相同的根,x=b/(2*a),故第二空填b/(2*a