Python實例:1~5例

例1:有四個數字:一、二、三、4,能組成多少個互不相同且無重複數字的三位數?各是多少?css

#!/usr/bin/python3
# -*- coding: UTF-8 -*-

c=0
for i in range(1,5):
    for j in range(1,5):
        for k in range(1,5):
            if (i!=j) and (j!=k) and (i!=k):
                print('%d%d%d'%(i,j,k),end=' ')
                c+=1
print("\n共組成%d個無重複三位數"%c)

輸出結果:python

123 124 132 134 142 143 213 214 231 234 241 243 312 314 321 324 341 342 412 413 421 423 431 432 
共組成24個無重複三位數

例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,求應發放獎金總數?ruby

#!/usr/bin/python3
# -*- coding: UTF-8 -*-

i = int(input('淨利潤:'))
arr = [1000000,600000,400000,200000,100000,0]
rat = [0.01,0.015,0.03,0.05,0.075,0.1]
r = 0
for idx in range(0,6):
    if i>arr[idx]:
        r+=(i-arr[idx])*rat[idx]
        i=arr[idx]
print(r)

輸出結果:bash

淨利潤:800000    #輸入800000
36500.0         #輸出獎金總數

例3:一個整數,它加上100後是一個徹底平方數,再加上168又是一個徹底平方數,請問該數是多少?app

分析一下:x+100 = m*m; x+100+168=n*n; (n+m)*(n-m) = 168;
m + n = i,m - n = j,i * j =168,i 和 j 至少一個是偶數
m = (i + j) / 2, n = (i - j) / 2,i 和 j 要麼都是偶數,要麼都是奇數。
i 與 j 均是大於等於 2 的偶數。
因爲 i * j = 168, j>=2,則 1 < i < 168 / 2 + 1。ui

#!/usr/bin/python3
# -*- coding: UTF-8 -*-

for i in range(1,85):
    if 168 % i == 0:
        j = 168 / i;
        if  i > j and (i + j) % 2 == 0 and (i - j) % 2 == 0 :
            m = (i + j) / 2
            n = (i - j) / 2
            x = n * n - 100
            print(x,end=' ')

輸出結果:spa

-99 21 261 1581

例4:輸入某年某月某日,判斷這一天是這一年的第幾天?code

#!/usr/bin/python3
# -*- coding: UTF-8 -*-
year = int(input('請輸入年份:'))
month = int(input('請輸入月份:'))
day = int(input('請輸入幾號:'))
months = (0,31,59,90,120,151,181,212,243,273,304,334)
if 0<month<=12:
    sum = months[month-1]
else :
    print('輸入錯誤')
sum += day
leap = 0
if (year % 400 == 0) or ((year % 4 == 0) and (year % 100 != 0)):
    leap = 1
if (leap == 1) and (month > 2):
    sum += 1
print '這是第%d天.' % sum 

輸出結果:server

請輸入年份:2018
請輸入月份:7
請輸入幾號:5
這是第186天

例5:輸入三個整數x,y,z,請把這三個數由小到大輸出。ip

#!/usr/bin/python3
# -*- coding: UTF-8 -*-
num = []
for i in range(0,3):
    n = int(input('請輸入一個數:'))
    num.append(n)
num.sort()
print(num)

輸出結果:

請輸入一個數:34
請輸入一個數:45
請輸入一個數:21
[21, 34, 45]
相關文章
相關標籤/搜索