1. 程式人生 > >20181206hw 小作業3 小作業4

20181206hw 小作業3 小作業4

小作業3

1. 求區間[100, 200]內10個隨機整型數的最大值

import random

list = []
for i in range(10):
    list.append( random.randrange( 100 , 201 ) )

print( list )
print( max( list ) )

2. 我們將三位整型數的每一位的立方和等於數值本身的數稱為水仙花數,為有多少個水仙花數(一定是三位數)

for n in range( 100 , 1000 ) :
  print( str(n)+"\n" \
  if ( n == int( str(n)[0] ) ** 3 + int( str(n)[1] ) ** 3 + int( str(n)[2] ) ** 3 ) else
'' , end='')

3. 輸出有1, 2, 3, 4這四個數字組成的每位都不同的所有的三位數

l = [ 1 , 2 , 3 , 4 ]

for i1 in l :
    temp1 = l.index( i1 )
    l.remove( i1 )
    for i2 in l :
        temp2 = l.index( i2 )
        l.remove( i2 )
        for i3 in l :
            print( i1 * 100 + i2 * 10 + i3 )
        l.insert( temp2 , i2  )

4. 求列表s=[2,8,9,6,7,1,5,66]中的元素個數,最大數,最小數,平均數。末尾新增一個新元素10?刪除元素5

s = [2,8,9,6,7,1,5,66]

sum = 0
for i in s :
    sum += i

print( "count={},max={},min={},ave={}"\
.format( len(s) , max(s) ,min(s) ,sum/len(s)) )

s.append( 10 )
s.remove( 5 )

6. 斐波那契數列(Fibonacci sequence),又稱黃金分割數列,指的是這樣一個數列:0、1、1、2、3、5、8、13、21、34、……。

求斐波那契數列的前20項

l = [ 0 , 1 ] 

for i in range( 2 , 20 ) : 
    l.append( l[ i - 2 ] + l[ i - 1 ] ) 

print( l )

小作業4

1.寫一個計算可以計算一個人BMI(身體質量指數)指數程式

  體質指數(BMI)=體重(kg)÷身高^2(m) 

成人的BMI數值:   過輕:低於18.5   正常:18.5-23.9   過重:24-27   肥胖:28-32   非常肥胖, 高於32
height , weight = eval( input( "輸入(身高m,體重kg): " ) ) 
BMI = weight / ( height ** 2 ) 
if BMI<=18.5 :
    print('過輕')
elif BMI<=23.5 :
    print( '正常' )
elif BMI<=27 :
    print( '過重' )
elif BMI<=32 :
    print( '肥胖' )
else :
    print( '非常肥胖' )

2. 抓了a,b,c,d四名犯罪嫌疑人,其中有一人是小偷,審訊中:

•a說我不是小偷;
•b說c是小偷;
•c說小偷肯定是d;
•d說c胡說!

其中有三個人說的是實話,一個人說的是假話,請程式設計推斷誰是小偷。

for i in range(1,5 ):
    sum = 0 
    if i != 1:
        sum += 1
    if i == 3:
        sum += 1
    if i == 4:
        sum += 1
    if i != 4:
        sum += 1
    print( i if sum == 3 else '') 

 

3. 隨機產生10個10以內的整型數,存放到列表中,將列表中的最大值放在列表的最後

import random

l = []

for i in range( 10 ) : 
    l.append( random.randrange(10) )
l.sort()
print( l )