【正文】
pow(x, 2) + pow(y, 2) 1: count += 1 i += 1 pi = 4 * count / N print(pi)monteCarlo(1000000)【詳解】本題考查的知識點是Python程序。原理:通常蒙特?卡羅方法通過構(gòu)造符合一定規(guī)則的隨機數(shù)來解決數(shù)學上的各種問題。對于那些由于計算過于復雜而難以得到解析解或者根本沒有解析解的問題,蒙特?卡羅方法是一種有效的求出數(shù)值解的方法。一般蒙特?卡羅方法在數(shù)學中最常見的應(yīng)用就是蒙特?卡羅積分。方法:蒙特卡羅方法的解題過程可以歸結(jié)為三個主要步驟:構(gòu)造或描述概率過程;實現(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.C D B D C 【詳解】本題主要考查Python程序調(diào)試。①Python程序for循環(huán)格式是:for 變量 in range( ),故程序中①處應(yīng)填寫in,選C選項。②程序中x%4的作用是計算x除以4的余數(shù),選D選項。③colors=[red, green, blue, yellow],依次循環(huán)從colors中取顏色,故執(zhí)行此程序,繪制出圓形的總顏色數(shù)是4,故本題選B選項。④x的范圍是從0到99,故執(zhí)行此程序,繪制出圓形的總個數(shù)是100個,選D選項。⑤此程序?qū)儆诔绦蛟O(shè)計結(jié)構(gòu)中的循環(huán)結(jié)構(gòu),選C選項。19.D n=len(password) ch=password[i] x=n1+n2+n3 【詳解】本題主要考查Python程序的執(zhí)行與調(diào)試。①“12abcd5!”含有三類字符,則輸出結(jié)果為強,選D選項。②此處取密碼的長度,將其賦給變量n,len()是返回字符串的長度,故填n=len(password)。③ch是取密碼的每一位進行判斷,故此處填ch=password[i]。④當出現(xiàn)數(shù)字時n1=1,當出現(xiàn)字母時n2=1,當出現(xiàn)其他字符時n3=1,x用來統(tǒng)計有幾類字符,故此處填x=n1+n2+n3。20.for i in range(1,10): for j in range(1,i+1): print(str(j)+*+str(i)+=+str(i*j),end= )print()【詳解】本題主要考查Python程序的執(zhí)行。九九乘法口訣表可以通過嵌套for循環(huán)實現(xiàn),內(nèi)層循環(huán)完一次,執(zhí)行print()換行,具體代碼如下:for i in range(1,10): for j in range(1,i+1): print(str(j)+*+str(i)+=+str(i*j),end= )print()21.s=0n=eval(input( 請輸入一個數(shù):))for i in range(0,n): f=1 for j in range(1,i): f=f*j s+=fprint(s%1000000)【詳解】本題主要考查Python程序設(shè)計??梢酝ㄟ^嵌套for循環(huán)實現(xiàn)題干要求,外層循環(huán)進行求和,內(nèi)層循環(huán)實現(xiàn)階乘,具體代碼如下:s=0n=eval(input( 請輸入一個數(shù):))for i in range(0,n): f=1 for j in range(1,i): f=f*j s+=fprint(s%1000000