Python编程4道练习题
實(shí)例一:數(shù)學(xué)計(jì)算
簡(jiǎn)述:這里有四個(gè)數(shù)字,分別是:1、2、3、4
提問(wèn):能組成多少個(gè)互不相同且無(wú)重復(fù)數(shù)字的三位數(shù)?各是多少?
Python解題思路分析:可填在百位、十位、個(gè)位的數(shù)字都是1、2、3、4。組成所有的排列后再去 掉不滿足條件的排列。(for循環(huán))
代碼實(shí)現(xiàn):
list = [] #定義一個(gè)空的列表用來(lái)存儲(chǔ)生產(chǎn)的數(shù)字 for i in range(1,5): #定義百位數(shù)for j in range(1,5): #定義十位數(shù)for k in range(1,5): #定義個(gè)位數(shù)if i != j and j !=k and i != k:num = i*100+j*10+k print(num)list.append(num) #將生成的數(shù)字加入到list列表中result_num = len(list) #統(tǒng)計(jì)列表中元素的個(gè)數(shù) print("可以組合的個(gè)數(shù)為%d"%(result_num))實(shí)例二:關(guān)于數(shù)軸和長(zhǎng)整型數(shù)據(jù)類型的練習(xí)
簡(jiǎn)述:企業(yè)發(fā)放的獎(jiǎng)金根據(jù)利潤(rùn)提成。利潤(rùn)(I)低于或等于10萬(wàn)元時(shí),獎(jiǎng)金可提10%;利潤(rùn)高于10萬(wàn)元,低于20萬(wàn)元時(shí),低于10萬(wàn)元的部分按10%提成,高于10萬(wàn)元的部分,可提成7.5%;20萬(wàn)到40萬(wàn)之間時(shí),高于20萬(wàn)元的部分,可提成5%;40萬(wàn)到60萬(wàn)之間時(shí)高于40萬(wàn)元的部分,可提成3%;60萬(wàn)到100萬(wàn)之間時(shí),高于60萬(wàn)元的部分,可提成1.5%,高于100萬(wàn)元時(shí),超過(guò)100萬(wàn)元的部分按1%提成.
提問(wèn):從鍵盤輸入當(dāng)月利潤(rùn)I,求應(yīng)發(fā)放獎(jiǎng)金總數(shù)?
Python解題思路分析:請(qǐng)利用數(shù)軸來(lái)分界及定位。并要注意定義時(shí)需要把獎(jiǎng)金定義成長(zhǎng)整型的數(shù)據(jù)類型。
代碼實(shí)現(xiàn):
profit = int(input("請(qǐng)輸入您的凈利潤(rùn):")) arr = [1000000,600000,400000,200000,100000,0] Money_rate = [0.01,0.015,0.03,0.05,0.075,0.1] bonus = 0 for i in range(0,6):if profit > arr[i]: #判斷凈利潤(rùn)的范圍bonus += (profit-arr[i])*Money_rate[i] #獎(jiǎng)金的計(jì)算print((profit-arr[i])*Money_rate[i])profit = arr[i] #重新復(fù)制凈利潤(rùn),進(jìn)行低階段判斷 print(bonus)實(shí)例三:平方數(shù)的操作練習(xí)
簡(jiǎn)述:一個(gè)整數(shù),它加上100和加上268后都是一個(gè)完全平方數(shù)
提問(wèn):請(qǐng)問(wèn)該數(shù)是多少?
Python解題思路分析:在10000以內(nèi)判斷,將該數(shù)加上100后再開(kāi)方,加上268后再開(kāi)方,如果開(kāi)方后的結(jié)果滿足如下條件,即是結(jié)果。
說(shuō)明:sqrt() 方法返回?cái)?shù)字x的平方根,sqrt()是不能直接訪問(wèn)的,需要導(dǎo)入 math 模塊,通過(guò)靜態(tài)對(duì)象調(diào)用該方法
''' 遇到問(wèn)題沒(méi)人解答?小編創(chuàng)建了一個(gè)Python學(xué)習(xí)交流QQ群:531509025 尋找有志同道合的小伙伴,互幫互助,群里還有不錯(cuò)的視頻學(xué)習(xí)教程和PDF電子書! ''' import math for i in range(10000):x = int(math.sqrt(i+100))y = int(math.sqrt(i+268))if x * x == i + 100 and y * y == i + 268:print(i)實(shí)例四:日期計(jì)算,編程練習(xí)
簡(jiǎn)述:要求輸入某年某月某日
提問(wèn):求判斷輸入日期是當(dāng)年中的第幾天?
Python解題思路分析:我們就以3月5日這一天為例。首先把前兩個(gè)月的加起來(lái),然后再加上5天即本年的第幾天。這里有一種特殊的情況,就是閏月,遇到這種情況且輸入月份大于2時(shí)需考慮多加一天。如果不是很明白,可以看下邊的python源碼。
year = int(input("請(qǐng)輸入年份:")) month = int(input("請(qǐng)輸入月份:")) day = int(input("請(qǐng)輸入天:")) months = (0,31,59,90,120,151,181,212,243,273,304,334) #按月份統(tǒng)計(jì)該月份前的天數(shù) if 0 < month <= 12:sum = months[month-1] else:print("日期輸入錯(cuò)誤!") sum += day a = 0 #定義一個(gè)中間變量 if (year % 400 == 0) or (( year % 4 == 0 ) and ( year % 100 != 0)): #判斷年份是否是閏年a = 1 if (a == 1) and ( month > 2):sum += 1 print("今天是第%s天"%sum)總結(jié)
以上是生活随笔為你收集整理的Python编程4道练习题的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Python函数16道入门练习题
- 下一篇: python下timer定时器常用的两种