新手練習:Python練習題目

yarking207發表於2019-04-11

Python:新手練習

(題目轉自小甲魚網站)


1  、

題目:有5個數字:1、2、3、4,5能組成多少個互不相同且無重複數字的4位數?各是多少?

程式分析:可填在千、百、十、個位的數字都是1、2、3、4、5。組成所有的排列後再去掉不滿足條件的排列。


練習:

count = 0

for x in range(1,6):

    for y in range(1,6):

        for z in range(1,6):

            for k in range(1,6):

                if x == y or y == z or x==z or x ==k or y==k or z== k :

                   continue

                else:

                   print(x,y,z,k)

                   count +=1

print('有%d種組合'% count)


或者

count = 0

for x in range(1,6):

    for y in range(1,6):

        for z in range(1,6):

            for k in range(1,6):

                if x != y and y != z and x != z and x != k and y != k and z != k :

                   print(x,y,z,k)

                   count +=1

print('有%d種組合'% count)



2、


題目:企業發放的獎金根據利潤提成。

利潤(I)低於或等於10萬元時,獎金可提10%;

利潤高於10萬元,低於20萬元時,低於10萬元的部分按10%提成,高於10萬元的部分, 可提成7.5%;

20萬到40萬之間時,高於20萬元的部分,可提成5%;40萬到60萬之間時高於40萬元的部分, 可提成3%;

60萬到100萬之間時,高於60萬元的部分,可提成1.5%,高於100萬元時, 超過100萬元的部分按1%提成,

從鍵盤輸入當月利潤I,求應發放獎金總數?


程式分析:請利用數軸來分界,定位。注意定義時需把獎金定義成長整型。


練習:

profit = input ("please enter the profit:")

I = int (profit)

bonus = 0

if I <= 100000:

        bonus = I * 0.1

elif 100000 < I <= 200000:

        bonus = 100000 * 0.1 + 0.075 * (I - 100000)

elif 200000 < I <= 400000:

        bonus = 17500 + 0.05 * (I - 200000)

elif 400000 < I <= 600000:

        bonus = 27500 + 0.03 * (I - 400000)

elif 600000 < I <= 1000000:

        bonus = 33500 + 0.015 * (I - 600000)

elif I > 1000000:

        bonus = 39500 + 0.01 * (I - 1000000)

print ("bonus:",bonus)






來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/220205/viewspace-2641019/,如需轉載,請註明出處,否則將追究法律責任。

相關文章