Python程序設(shè)計實踐 教案 實驗3 運算符與表達(dá)式_第1頁
Python程序設(shè)計實踐 教案 實驗3 運算符與表達(dá)式_第2頁
Python程序設(shè)計實踐 教案 實驗3 運算符與表達(dá)式_第3頁
Python程序設(shè)計實踐 教案 實驗3 運算符與表達(dá)式_第4頁
Python程序設(shè)計實踐 教案 實驗3 運算符與表達(dá)式_第5頁
已閱讀5頁,還剩7頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

《Python程序設(shè)計實踐教程》課程教案課題:運算符與表達(dá)式教學(xué)目的:理解Python中數(shù)據(jù)存儲與對象的概念:通過講解數(shù)據(jù)在內(nèi)存中的存儲方式以及Python中所有數(shù)據(jù)都是對象的特點,幫助學(xué)生理解數(shù)據(jù)處理的底層機(jī)制,為后續(xù)編程實踐奠定基礎(chǔ)。掌握標(biāo)識符的命名規(guī)則與使用場景:介紹標(biāo)識符的命名規(guī)則及其在變量、函數(shù)、類等對象中的應(yīng)用,使學(xué)生能夠正確命名并使用標(biāo)識符,提高代碼的可讀性與規(guī)范性。熟悉Python中的多種數(shù)據(jù)類型及其特點:詳細(xì)講解數(shù)字、字符串、列表等常用數(shù)據(jù)類型的特點與使用方法,幫助學(xué)生根據(jù)需求選擇合適的數(shù)據(jù)類型進(jìn)行數(shù)據(jù)處理。理解表達(dá)式的構(gòu)成與計算方法:通過操作數(shù)與運算符的組合,使學(xué)生掌握表達(dá)式的編寫方法,能夠利用表達(dá)式完成各種計算任務(wù),提升代碼的邏輯性與效率。掌握各類運算符的使用方法:包括算術(shù)運算符、比較運算符、邏輯運算符等,幫助學(xué)生理解不同運算符的功能與應(yīng)用場景,并能夠靈活運用于實際問題中。培養(yǎng)數(shù)據(jù)計算與處理的能力:通過表達(dá)式的編寫與實踐,學(xué)生能夠熟練處理不同類型的數(shù)據(jù),并掌握數(shù)據(jù)計算與轉(zhuǎn)換的技巧,為后續(xù)復(fù)雜編程任務(wù)提供支持。為后續(xù)編程學(xué)習(xí)與實踐奠定基礎(chǔ):通過本章的學(xué)習(xí),學(xué)生能夠理解Python中數(shù)據(jù)存儲與處理的基本原理,掌握表達(dá)式與運算符的使用方法,為后續(xù)編寫復(fù)雜程序與算法實現(xiàn)提供理論支持與實踐經(jīng)驗。課型:新授課課時:本章安排2個課時。教學(xué)重點:重點:1.掌握Python關(guān)鍵字、標(biāo)識符和變量的含義。2.掌握Python數(shù)據(jù)類型的含義和用法。3.掌握Python常見運算符和表達(dá)式的規(guī)則和用法。4.學(xué)會使用運算符、表達(dá)式求解簡單的數(shù)學(xué)問題。5.熟悉常用的Python系統(tǒng)函數(shù)。教學(xué)難點:難點:本章教學(xué)難點在于如何理解Python中數(shù)據(jù)作為對象的概念,并掌握復(fù)雜表達(dá)式中運算符的優(yōu)先級與結(jié)合性規(guī)則。教學(xué)過程:教學(xué)形式:講授課,教學(xué)組織采用課堂整體講授和分組演示。教學(xué)媒體:采用啟發(fā)式教學(xué)、案例教學(xué)等教學(xué)方法。教學(xué)手段采用多媒體課件、視頻等媒體技術(shù)。板書設(shè)計:本課標(biāo)題運算符與表達(dá)式課次0.5授課方式理論課□討論課□習(xí)題課□其他□課時安排2學(xué)分共2分授課對象普通高等院校學(xué)生任課教師教材及參考資料1.《Python程序設(shè)計實踐教程》。2.本教材配套視頻教程及學(xué)習(xí)檢查等資源。3.與本課程相關(guān)的其他資源。教學(xué)基本內(nèi)容教學(xué)方法及教學(xué)手段課程引入在編程的世界中,數(shù)據(jù)是程序的核心,而運算符與表達(dá)式則是處理數(shù)據(jù)的工具。無論是簡單的數(shù)學(xué)計算,還是復(fù)雜的邏輯判斷,都離不開運算符與表達(dá)式的運用。本章將帶領(lǐng)大家深入理解Python中數(shù)據(jù)的存儲與處理機(jī)制,探索如何通過標(biāo)識符引用數(shù)據(jù)對象,并學(xué)習(xí)如何使用運算符與表達(dá)式完成各種計算任務(wù)。我們將從Python的基本數(shù)據(jù)類型入手,了解數(shù)字、字符串、列表等數(shù)據(jù)的特點與使用方法,同時掌握算術(shù)運算符、比較運算符、邏輯運算符等的功能與應(yīng)用場景。通過本章的學(xué)習(xí),你將能夠編寫高效的表達(dá)式,處理復(fù)雜的數(shù)據(jù)計算問題,為后續(xù)編程實踐奠定堅實的基礎(chǔ)。讓我們一起開啟數(shù)據(jù)處理的探索之旅,掌握Python中運算符與表達(dá)式的強(qiáng)大功能!參考以下形式:1.銜接導(dǎo)入2.懸念導(dǎo)入3.情景導(dǎo)入4.激疑導(dǎo)入5.演示導(dǎo)入6.實例導(dǎo)入7.其他形式實驗3運算符與表達(dá)式一、實驗?zāi)康?.掌握?Python?關(guān)鍵字、標(biāo)識符和變量的含義。2.掌握?Python?數(shù)據(jù)類型的含義和用法。3.掌握?Python?常見運算符和表達(dá)式的規(guī)則和用法。4.學(xué)會使用運算符、表達(dá)式求解簡單的數(shù)學(xué)問題。5.熟悉常用的?Python?系統(tǒng)函數(shù)。二、知識要點1.計算機(jī)程序要處理的數(shù)據(jù)必須放入內(nèi)存中,Python?中的所有數(shù)據(jù)都是對象。變量是指向?qū)ο蟮囊茫窃诔绦蜻\行過程中值會發(fā)生變化的量。2.Python?標(biāo)識符通常用作變量、函數(shù)、類及其他對象的名稱。Python?標(biāo)識符一般由字母、數(shù)字、下畫線構(gòu)成,且不能以數(shù)字開頭。例如,a、A、_s、py_1?等是合法的標(biāo)識符,而?1a、ab、a.b?等是非法的標(biāo)識符。標(biāo)識符區(qū)分字母的大小寫。例如,max、Max?是兩個不同的標(biāo)識符。注意:用戶自定義標(biāo)識符不能與關(guān)鍵字同名。關(guān)鍵字可通過調(diào)用內(nèi)置函數(shù)?help()查看。>>>help()help>keywords #獲得系統(tǒng)關(guān)鍵字3.表達(dá)式是可以進(jìn)行計算的代碼片段,由操作數(shù)和運算符構(gòu)成。Python?的運算符如下。①算術(shù)運算符有+、?、*、/、//、%、**等。其中“//”為整除運算,返回商的整數(shù)部分(向下取整);“/”為普通除法運算,結(jié)果為浮點數(shù)。②比較運算符有==、!=、>、<、>=、<=等,Python3.x?不再支持“<

>”運算符。③賦值運算符有=、+=、?=、*=、/=、//=、%=、**=等,“=”是基本賦值運算符,其他的是復(fù)合賦值運算符(先運算再賦值)。④位運算符有&、|、~、^、<<、>>等,運算規(guī)則是將操作數(shù)轉(zhuǎn)換為二進(jìn)制數(shù)再進(jìn)行按位運算。⑤邏輯運算符有and、or、not?等,運算結(jié)果為?True?或?False。⑥成員運算符有?in、notin?等,用于測試指定序列中是否包含特定元素,運算結(jié)果為?True?或?False。⑦身份運算符有is、notis?等,用于判斷兩個標(biāo)識符是否引用自同一個對象,運算結(jié)果為?True?或?False。如果一個表達(dá)式中包含多個運算符,計算順序取決于運算符的優(yōu)先級和結(jié)合順序。運算符優(yōu)先級如表?3-1?所示。表?3-1運算符優(yōu)先級優(yōu)先級運算符描述備注1()函數(shù)調(diào)用math.sqrt(2).成員選擇math.pi[]下標(biāo)a[0]2**冪2**4=163~按位取反~24+正+2?負(fù)?25*乘2*8[1,2]*2=[1,2,1,2]/除5/2=2.5//整除5//2=2%求余5%2=16+加2+8?減10?27<<左移5<<2?>>右移5>>2?8&按位與2&39^按位異或2^310|按位或2|311>、>=、<、<=、==、!=關(guān)系運算結(jié)果為?True?或?False12=及其復(fù)合形式賦值運算及其復(fù)合運算*=、/=、//=、%=、+=、-=、<<=、>>=、&=、^=、|=13is、isnot身份運算若x=y=1,則?xisy?為?True,xisnoty?為?False14in、notin成員運算1inrange(5)為?True,0notin[1,2,3]為?True15not邏輯非notx>2為?True?或?False16and邏輯與x>2andy<5?為?True?或?False17or邏輯或x>2ory<5為?True?或?False注:優(yōu)先級從高到低(1~17)4.Python?提供了多種數(shù)據(jù)類型,主要有布爾型、數(shù)值型、字符串、列表、元組、字典、集合等。5.常用的系統(tǒng)函數(shù)如下。Python?提供了豐富的函數(shù),分為內(nèi)置函數(shù)、標(biāo)準(zhǔn)庫函數(shù)、第三方庫函數(shù)。利用函數(shù)可以快捷、高效地求解問題。Python?提供了一些內(nèi)置函數(shù),這類函數(shù)不需要導(dǎo)入任何模塊即可直接使用,主要用于完成一些運算符無法實現(xiàn)的運算功能。在命令行窗口中輸入?dir(__builtins__),即可查看所有內(nèi)置函數(shù)和內(nèi)置對象。使用?help(函數(shù)名)即可查看某個函數(shù)的用法。常用的內(nèi)置函數(shù)有?I/O?函數(shù)、數(shù)學(xué)運算類內(nèi)置函數(shù)、集合操作函數(shù)等。I/O?函數(shù)有?input()、print()、open()等。(1)主要的數(shù)學(xué)運算類內(nèi)置函數(shù)數(shù)學(xué)運算類內(nèi)置函數(shù)可以根據(jù)用戶提供的參數(shù)計算出相應(yīng)的結(jié)果,進(jìn)行一些基本的數(shù)學(xué)運算,如表?3-2?所示。表3-2主要的數(shù)學(xué)運算類內(nèi)置函數(shù)函數(shù)功能示例返回結(jié)果abs(x)計算?x?的絕對值abs(-38)38divmod(x,y)計算?x?除以?y?得到的商和余數(shù)divmod(7,2)(3,1)pow(x,y)計算?x?的?y?次冪pow(2,3)8round(x[,n])四舍五入取整,n?為可選參數(shù),結(jié)果保留?n?位小數(shù)round(12.306,2)12.31max(x1,x2,…,xn)計算?x1,x2,…,xn?的最大值max([2,8,6])8min(x1,x2,…,xn)計算?x1,x2,…,xn?的最小值min([2,8,6])2sum(iterable,start)對數(shù)值型可迭代對象進(jìn)行求和,再加上?start?參數(shù);start?是相加的參數(shù),如果沒有設(shè)置這個值,默認(rèn)為0sum([1,3,5,7],2)18sum(range(10))45對以上函數(shù)的說明如下。①方括號中的是可選參數(shù),可以根據(jù)程序的需求進(jìn)行取舍。②abs(x)函數(shù)用于計算絕對值,其參數(shù)必須是數(shù)值型。如果參數(shù)是一個復(fù)數(shù),那么?abs(x)函數(shù)返回的絕對值是此復(fù)數(shù)與它的共軛復(fù)數(shù)乘積的平方根。>>>abs(-5)) #輸出?5>>>abs(-3.14)) #輸出?3.14>>>print(abs(8+3j)) #輸出?8.54400374531753③round(x[,n])函數(shù)是?Python?自帶的一個函數(shù),用于四舍五入取整。n?指定要保留的小數(shù)位數(shù),如果該參數(shù)為?None?或省略,則返回一個整數(shù)。這個轉(zhuǎn)換過程遵循“四舍六入五成雙”的規(guī)則,即小于或等于?4?時舍去;大于或等于?6?時進(jìn)位;如果是?5,則根據(jù)后面的數(shù)字來定。5?后面有數(shù)字時舍?5?進(jìn)?1;5?后面無有效數(shù)字時,分為兩種情況進(jìn)行處理,若?5?前面為偶數(shù)則舍?5?進(jìn)?1,若?5?前面為奇數(shù)則舍?5?不進(jìn)位。>>>round(1.5) #輸出?2>>>round(2.5) #輸出?2>>>round(9.215,2) #輸出?9.21>>>round(9.2151,2) #輸出?9.22(2)常用的?Python?內(nèi)置函數(shù)常用的?Python?內(nèi)置函數(shù)如表?3-3?所示。表3-3常用的?Python?內(nèi)置函數(shù)函數(shù)功能示例返回結(jié)果len(iterable)返回序列對象(字符串、列表、元組等)的長度(元素個數(shù))b=[1,2,3,4,5],len(b)5len(range(10))10map(func,iterable)根據(jù)提供的函數(shù)對指定序列進(jìn)行映射a,b,c=map(int,"122456".split())a?為?12,b?為?24,c?為?56help(x,y[,z])查看函數(shù)或模塊的使用說明ord(obj)返回字符的?Unicode?編碼ord('A')65ord('a')97chr(obj)與?ord(obj)函數(shù)相反,返回?Unicode?編碼對應(yīng)的字符chr(65)'A'chr(97)'a'str(obj)返回?obj?對象轉(zhuǎn)換而成的字符串str(123.456)'123.456'bool(obj)將其他類型轉(zhuǎn)化為布爾型,obj?為真時,返回?True,否則返回?Falsebool(3)Truebool(0.0)Falseeval('x+y')計算字符串中有效的表達(dá)式eval('3+5')8filter(x1,x2,…,xn)用于過濾序列,返回由符合條件的元素組成的新列表func=lambdax:x%2result=filter(func,[1,2,3,4,5])print(list(result))[1,3,5]請掃描右側(cè)二維碼閱讀更詳細(xì)的用法和示例。(3)常用的標(biāo)準(zhǔn)庫函數(shù)①math?庫。math?庫能支持包括整數(shù)和浮點數(shù)在內(nèi)的所有數(shù)值型的運

算。math?庫中常用的算術(shù)運算函數(shù)如表?3-4?所示。表3-4math?庫中常用的算術(shù)運算函數(shù)函數(shù)描述數(shù)學(xué)表示math.e表示自然對數(shù)底數(shù)emath.pi表示圓周率πmath.sin(x)返回?x?的正弦值sinxmath.asinx)返回?x?的反正弦值arcsinxmath.cos(x)返回?x?的余弦值cosxmath.acos(x)返回?x?的反余弦值arccosxmath.tan(x)返回?x?的正切值tanxmath.atan(x)返回?x?的反正切值arctanxmath.fabs(x)返回?x?的絕對值|x|(續(xù)表)函數(shù)描述數(shù)學(xué)表示math.sqrt(x)返回?x?的平方根math.log(x[,base])返回以?base?為底數(shù)時?x?的對數(shù)值,只有?x?參數(shù)時返回?lnxlogbasexlnxmath.log10(x)返回以?10?為底數(shù)時?x?的對數(shù)值log10xmath.pow(x,y)返回?x?的?y?次冪xymath.exp(x)返回?e?的?x?次冪(e?是自然對數(shù)底數(shù))exmath.factorial(x)返回?x?的階乘x!②random?庫。隨機(jī)數(shù)可被用于數(shù)學(xué)、游戲及安全領(lǐng)域,還經(jīng)常被嵌入算法中,以提高算法的效率和安全性。random?庫中常用的函數(shù)如表?3-5?所示。表3-5random?庫中常用的函數(shù)類型函數(shù)描述種子seed(a)設(shè)置隨機(jī)數(shù)種子,默認(rèn)種子是系統(tǒng)時間產(chǎn)生隨機(jī)數(shù)random()生成一個[0,1)范圍內(nèi)的隨機(jī)小數(shù)uniform(x,y)產(chǎn)生一個[x,y]范圍內(nèi)的隨機(jī)浮點數(shù)randint(x,y)產(chǎn)生一個[x,y]范圍內(nèi)的隨機(jī)整數(shù)randrange(x,y[,z])產(chǎn)生一個[x,y]范圍內(nèi)以?z?遞增的集合中的隨機(jī)數(shù)序列類型相關(guān)choice(x)從序列?x?中隨機(jī)返回一個元素sample(x,y)從序列?x?中隨機(jī)選擇?y?個元素,以列表形式返回shuffle(x)將列表?x?中的元素隨機(jī)打亂排列隨機(jī)函數(shù)使用一個稱為“種子”的值控制隨機(jī)數(shù)的生成?!胺N子”一般是整數(shù)。只要種子相同,每次生成的隨機(jī)數(shù)序列也相同。三、實例解析【實例?3-1】計算復(fù)利利息根據(jù)存款金額?m(正整數(shù))、存期年限?y(正整數(shù))、年利率?r(浮點數(shù))計算到期的利息?p(不含本金),結(jié)果保留?2?位小數(shù)。復(fù)利利息的計算公式為p=m×(1+r)y-m。(1)輸入格式在第一行中輸入一個正整數(shù)?m(0<m<1000000),在第二行中輸入一個正整數(shù)?y(0<y<100),在第三行中輸入一個浮點數(shù)?r(0<r<0.5)。(2)輸出格式輸出一個浮點數(shù),保留?2?位小數(shù)。(3)輸入樣例1000050.025(4)輸出樣例1314.08(5)問題分析計算?x?的?y?次冪可以用算術(shù)運算符“**”,即表示為?x**y;也可以用數(shù)學(xué)函數(shù)?pow(),即表示為?pow(x,y)。(6)程序代碼#sl3-1.pym=int(input())y=int(input())r=eval(input())p=m*(1+r)**y-mprint(f'{p:.2f}')(7)思考與討論①若用普通計息方式,不考慮復(fù)利(普通利息的計算公式為?p=m×r×y),請比較兩種計息方式的利息差。②請檢索銀行?1?年定期和?5?年定期的存款利率?,F(xiàn)假定存入?10000?元,存款到期后立即將利息與本金一起存入。請編寫程序計算按每次存?1?年和每次存?5?年的方式,20?年后兩種存款方式的得款總額。profit1=0.018#假定?1?年定期的存款利率為?1.8%profit5=0.042#假定?5?年定期的存款利率為?4.2%capital=10000#假定存入?10000?元foriinrange(20):capital+=capital*profit1print(f'方案?1:20?年后本金、利息總和為:{capital:.2f}')capital=10000foriinrange(4):capital+=capital*profit5*5print(f'方案?2:20?年后本金、利息總和為:{capital:.2f}')(8)運行結(jié)果方案?1:20?年后本金、利息總和為:14287.48方案?2:20?年后本金、利息總和為:21435.89【實例?3-2】整數(shù)的逆序輸出輸入一個正整數(shù),求出它是幾位數(shù),并逆序輸出這個整數(shù)(如果原數(shù)字的末尾是?0,則逆序輸出時去掉?0)。(1)問題分析因為不知道是幾位數(shù),因此用除以?10?并求余數(shù)的方法循環(huán)求出各位數(shù)字,同時統(tǒng)計位數(shù),再依次乘以?10,求出逆序數(shù)。(2)程序代碼#sl3-2.pyn=int(input("Enteranumber:"))m=ns=0count=0whilen!=0:s=s*10+n%10n//=10count+=1print(count)print(f'reversed({m})={s}')(3)輸出結(jié)果Enteranumber:12344reversed(1234)=4321(4)思考與討論①輸入一個三位整數(shù),要逆序輸出這個整數(shù),可以直接通過求個位數(shù)、十位數(shù)、百位數(shù)解決。②若輸入一個負(fù)整數(shù),符號位不變,而把數(shù)字倒過來,如何求出逆序數(shù)?③輸入?n?個數(shù),然后把這?n?個數(shù)逆序輸出,每兩個數(shù)之間留一個空格。應(yīng)如何設(shè)計程序?【實例?3-3】天天向上的力量一年有?365?天,以第?1?天的能力值(記為?1.0)為基數(shù),好好學(xué)習(xí)時能力值比前一天提高?1%,不學(xué)習(xí)時由于遺忘等原因能力值比前一天下降?1%。每天好好學(xué)習(xí)和每天不學(xué)習(xí),一年后能力值相差多少?(1)問題分析冪運算應(yīng)使用“**”運算符,不能用“^”,因為在?Python?中“^”表示異或。(2)程序代碼print((1+0.01)**365)print((1-0.01)**365)(3)輸出結(jié)果37.783434332887280.025517964452291125(4)思考與討論①由運行結(jié)果可以看出,每天努力?1%,一年后將提高?37?倍左右。相當(dāng)驚人吧!這就是天天向上的力量。●分別將比率改為?1%、5%,計算結(jié)果將如何改變?●一年有?365?天,一周有?5?個工作日,如果每個工作日都很努力,每天可以提高?1%,僅在周末放任兩天,能力值會每天下降?1%,計算結(jié)果將如何改變?●如果每周工作?5?天,休息?2?天,休息一天能力值下降?1%,工作日要努力到什么程度一年后的水平才能與每天努力?1%所取得的效果一樣?②可以使用?math?庫中的?pow(x,y)

函數(shù)進(jìn)行冪運算,代碼如下。action=math.pow((1+0.01),365) #好好學(xué)習(xí)?365?天inaction=math.pow((1-0.01),365) #懶惰懈怠?365?天③“三天打魚,兩天曬網(wǎng)”常用來比喻一個人對學(xué)習(xí)或工作沒有恒心,經(jīng)常中斷,不能長久堅持。如果將?1.0?作為能力值的基數(shù),好好學(xué)習(xí)一天則能力值比前一天提高?1%,懶惰懈怠一天則能力值比前一天下降?1%。每周五個工作日中的前三天進(jìn)步,后兩天退步,則一年后的能力值計算如下。importmathaction=math.pow((1+0.01),3) #三天打魚inaction=math.pow((1-0.01),2) #兩天曬網(wǎng)result=math.pow((action*inaction),(365/5)) #五天后的能力值變?yōu)?action*inaction,共有?365/5?個五天print("一年后能力值變?yōu)椋?,result)輸出結(jié)果如下。一年后能力值變?yōu)椋?.037601584335477可以看出,365?天后能力值變?yōu)樵瓉淼募s?2.0376?倍,與?37.78?倍相差甚遠(yuǎn)。愿讀者都能不斷地學(xué)習(xí)積累,最終取得理想的成績。本例也可以用下面的公式計算,請將下列公式轉(zhuǎn)換為代碼進(jìn)行驗證。四、實驗內(nèi)容1.在

IDLE

中依次輸入下列語句,將輸出結(jié)果填寫在橫線處,理解常用表達(dá)式和內(nèi)置函數(shù)的使用方法。>>>x,y=10,20>>>2+5**-1*abs(x-y) #輸出結(jié)果為:>>>8**(1/3)/(x+y) #輸出結(jié)果為:>>>divmod(x,y) #輸出結(jié)果為:>>>int(pow(x,x/y)) #輸出結(jié)果為:>>>round(pow(x,x/y),4) #輸出結(jié)果為:>>>sum(range(0,10,2)) #輸出結(jié)果為:>>>100/y%x #輸出結(jié)果為:>>>x>yandx%2==0andy%2==1 #輸出結(jié)果為:2.調(diào)試以下程序,分別輸入?123?和?456,分析程序的運行結(jié)果。n=eval(input("輸入?1?個?3?位數(shù):"))a=n//100b=n//10%10c=n%10print(f'3?位整數(shù)分別為:{a,b,c}')3.模擬商家收銀時的抹零行為。在超市結(jié)賬時,商家會給顧客一張小票,票面上的金額往往精確到角或分。有的商家為了讓利顧客,會將小數(shù)點后面的數(shù)字全部抹零。抹零行為可通過浮點數(shù)和整數(shù)的轉(zhuǎn)換實現(xiàn)。使用?input()函數(shù)依次錄入金額,金額用浮點數(shù)表示。錄入所有選購的商品后,對這些金額進(jìn)行相加運算,得到一個浮點數(shù),再轉(zhuǎn)化為整數(shù)。有的商家會采用四舍五入的原則進(jìn)行結(jié)算,請編寫這樣的程序。請問商家這種行為合法嗎?4.輸入?1?個自然數(shù),輸出各位數(shù)字之和??墒褂?map()函數(shù)將每個字符依次映射為整型,然后使用?sum()函數(shù)求和。5.編寫程序,判斷輸入的年份是閏年還是平年(閏年的條件是:年份可以被?4?整除但不能被?100?整除,或者能被?400?整除)。6.給定三角形三條邊的邊長,求三角形的面積。海倫公式:,其中。7.輸入一個正整數(shù)?n(奇數(shù),13≤n≤101),計算11+13+15+…+n的值。8.一張紙的厚度是?0.3?毫米,假如能連續(xù)對折,那么對折?n?次后厚度是多少?對折多少次后,紙的厚度會超過珠穆朗瑪峰的高度?9.已知一只氣球最多能充?v?升氣體,如果氣球內(nèi)的氣體超過?v?升,氣球就會爆炸。小明每天吹一次氣,每次吹進(jìn)?m?升氣體。由于氣球會慢慢漏氣,到了第?2?天早上,發(fā)現(xiàn)少了?n?升氣體。若小明每天早上吹一次氣,請編寫程序,計算第幾天氣球會被吹爆(要求輸入的?v?和?m?大于?0,n?大于或等于?0,并且?m?大于?n,否則輸出“Invalid”)?10.一個富翁與陌生人做一筆換錢生意,規(guī)則為:陌生人每天給富翁?10?萬元,直到滿一個月(30?天),而富翁第一天給陌生人?1?分,第二天給?2?分,第三天給?4?分……富翁每天給陌生人的金額是前一天的?2?倍,直到滿一個月。編程計算富翁給陌生人的總金額和陌生人給富翁的總金額。11.四位數(shù)?3025?具有特殊性質(zhì),它的前兩位數(shù)字?30?與后兩位數(shù)字?25?的和是?55,而?55?的平方正好等于?3025。請編程列舉出其他具有該性質(zhì)的四位數(shù)。12.以下程序可以模擬用蒙特卡羅法計算圓周率的近似值,請查閱蒙特卡羅法的計算原理,閱讀程序,進(jìn)行測試、分析。fromrandomimportrandomtimes=int(input("請輸入擲飛鏢的次數(shù):"))hits=0foriinrange(times):x=random(

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論