国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發(fā)設計 > 正文

Python核心編程2第五章課后練習

2019-11-14 17:35:31
字體:
來源:轉載
供稿:網(wǎng)友

5-1 整型,講講python普通整型與長整型區(qū)別

    python整形一共有三種:布爾型,長整型和標準整型。普通整型與長整型的區(qū)別在于標準整形的取值范圍是-2^31到2^31-1,長整型所能表達的數(shù)值與機器自身的內存有關。

5-2 定義一個函數(shù),用于兩個數(shù)相乘,并調用這個函數(shù)

 #!/usr/bin/env pythondef Multiply(number1,number2):        return number1*number2if __name__=="__main__":        number1 =input("please enter the number1:")        number2 =input("please enter the number2:")        PRint Multiply(number1,number2)
 
 

5-3 標準類型運算符. 寫一段腳本,輸入一個測驗成績,根據(jù)下面的標準,輸出他的評分

成績(A-F)。 
A: 90–100 
B: 80–89 
C: 70–79 
D: 60–69 
F: <60

(以下腳本,最好在增加對輸入數(shù)據(jù)的判斷!!!?。。?/span>

#!/usr/bin/env pythondef score(number):        number=number/10        if number==9|number==10:                return 'A'        if number==8:                return 'B'        if number==7:                return 'C'        if number==6:                return 'D'        else:                return 'F'if __name__=="__main__":        number=input("please enter the number:")        print score(number)
 
5-4   取余。判斷給定年份是否是閏年。使用下面的公式: 
一個閏年就是指它可以被 4 整除,但不能被 100 整除, 或者它既可以被400整(我覺得既可以被4整除又可以被100整除又問題,這樣1900年什么的都是閏年了)
除。比如 1992,1996 和 2000 年是閏年,但 1967 和 1900 則不是閏年。下一個是閏年的整世
紀是 2400 年。
#!/usr/bin/env pythondef isleapyear(year):        if (year%4==0 and year%100 !=0)or(year%4==0 and year%400==0):                return "%d is a leap year"%year        else:                return "%d is not a leap year"%yearif __name__=="__main__":        year=input("please enter the year:")        print isleapyear(year)
 

5-5 取余。取一個任意小于 1 美元的金額,然后計算可以換成最少多少枚硬幣。硬幣有 1美分,5 美分,10 美分,25 美分四種。1 美元等于 100 美分。舉例來說,0.76 美元換算結果應該是 3 枚 25 美分,1 枚 1 美分。類似 76 枚 1 美分,2 枚 25 美分+2 枚 10 美分+1 枚 5 美分+1枚 1 美分這樣的結果都是不符合要求的。

#!/usr/bin/env pythondef changecoin(number):    result=[]    meifen=[25,10,5]    for i in meifen:        result.append(number/i)        number=number%i    result.append(number)    return "25 Cent is %d,10 Cent is %d,5 Cent is %d,1 Cent is %d"%(result[0],result[1],result[2],result[3])if __name__=="__main__":        number=input("please enter the number:")        print changecoin(number)
 
 

5-6 算數(shù)。寫一個計算機程序。你的代碼可以接受這樣的表達式,兩個操作數(shù)加一個操作符:N1 操作符 N2。其中N1和N2為整型或浮點型,操作符可以是+、-、*、/、%、**、分別表示加法、減法、乘法、整型除、取余和冪運算。計算這個表達式的結果,然后顯示出來。提示:可以使用字符串方法split(),但不可以使用內建函數(shù)eval()。

#!/usr/bin/env pythondef calculator(number1,i,number2):        if i=='+':                return number1+number2        if i=='-':                return number1-number2        if i=='*':                return number1*number2        if i=='/':                return number1/number2        if i=='%':                return number1%number2        if i=='**':                return number1**number2caozuo=['+','-','**','/','%','*']string =raw_input("please enter the string:")for obj in caozuo:        if string.find(obj)>-1 and string.count(obj)<2:                number =string.split(obj)                list =[]                for i in number:                        list.append(i)                number1=int(list[0])                i=obj                number2=int(list[1])print calculator(number1,i,number2)
 
5-7  營業(yè)稅。隨意取一個商品金額,然后根據(jù)當?shù)貭I業(yè)稅額度計算應該交納的營業(yè)稅。
#!/usr/bin/env pythondef tax(number):        return number*0.8if __name__=="__main__":        number=input("Please enter the number:")        print tax(number)
 
5-8 幾何。計算面積和體積。
  (a)正方形和立方體
  (b)圓和球
#!/usr/bin/env pythonimport mathdef Square_and_cube(length):        print "The area of the square is %d"%pow(length,2)        print "The volume of a cube is %d"%pow(length,3)def Circle_and_sphere(length):        print "The area of the Circle is %d"%pow(length,2)*math.pi        print "The volume of a sphere is %d"%pow(length,3)*math.pi*4/3 if __name__=="__main__":        print """        (1)Calculate square and cube        (2)Calculate Circle and sphere        (3)exit()        """        length=input("please enter the length:")        choice=input("please make the choice number:")        if choice==1:                Square_and_cube(length)        if choice==2:                Circle_and_sphere(length)        if choice==3:                exit
 

5–9.   數(shù)值形式 回答下面關于數(shù)值格式的問題: 
 (a) 為什么下面的例子里 17+32 等于 49, 而 017+32 等于 47, 017+032 等于 41? 
 

17+32均為十進制數(shù)值相加:49

017+32為八進制數(shù)加十進制數(shù):15+32=47

017+032均為兩個八進制數(shù)相加:15+26=41

(b)為什么下面這個表達式我們得到的結果是 134L 而不是 1342 ? 
 

兩個長整型數(shù)相加,l與數(shù)字1相似,提倡長整型用大寫L

 

5-10 轉換。寫一對函數(shù)來進行華氏度到攝氏度的轉換。轉換公式為C=(F-32)*(5/9)應該在這個練習中使用真正的除法,否則你會得到不正確的結果

#!/usr/bin/env pythonfrom __future__ import divisiondef celcius(F):        C=F-32*(5/9)        return Cif __name__=="__main__":        F=input("please enter the Fahrenheit degree:")        print celcius(F)

 

5-11 取余。
   (a)使用循環(huán)和算術運算,求出0~20之間的所有偶數(shù)。
    #!/usr/bin/env python    for i in range(21):            if i%2==0:                    print i

 

   (b)同上,不過這次輸出所有的奇數(shù)。
   #!/usr/bin/env python      for i in range(21):              if i%2==1:                      print i
   (c)綜合(a)和(b),請問辨別奇數(shù)和偶數(shù)的最簡單的方法是什么?
    看是否能夠被2整除
   (d)使用(c)的成果,寫一個函數(shù),檢測一個整型是否被另一個整型整除。先要求用戶輸入兩個數(shù),然后你的函數(shù)判斷兩者是否有整除關系,根據(jù)判斷結果分別返回True和False。
#!/usr/bin/env pythondef div(num1,num2):        if num1%num2==0:                return "True"        else:                return "False"if __name__=="__main__":        num1=input("please type the num1:")        num2=input("please type the num2:")        print "%d divided %d is %s"%(num1,num2,div(num1,num2))
 
 

5-12 系統(tǒng)限制。寫一段腳本確認一下你的 Python 所能處理的整數(shù),長整數(shù),浮點數(shù)和復數(shù)的范圍

print sys.maxint

print -sys.maxint-1

print sys.float_info

print sys.long_info

 

5-13 轉換。寫一個函數(shù)把由小時和分鐘表示的時間轉換為只用分鐘表示的時間

#!/usr/bin/env pythondef time(h,t):        h=int(h)        t=int(t)        t=h*60+t        print "The minutes is",tif __name__=="__main__":        s=raw_input("please input the time in HH:MM.../n")        s=s.split(":")        time(s[0],s[1])
 

5-14 銀行利息。寫一個函數(shù),以定期存款利率為參數(shù),假定該賬戶每日計算復利,請計算返回年回報率。

#!/usr/bin/env pythonday_rate=float(raw_input("please type the day rate:/n"))year_rate=(1+day_rate)**365-1print "Annual return is %f"%year_rate
 

5-15 最大公約數(shù)和最小公倍數(shù)。請計算兩個整型的最大公約數(shù)和最小公倍數(shù)。

#!/usr/bin/env pythondef gcd(num1,num2):        i=1        while True:                i+=1                if (i%num1==0)&(i%num2==0):                        break        return "the gcd is %d"%idef lcm(num1,num2):        i=max(num1,num2)        while True:                i-=1                if (num1%i==0)&(num2%i==0):                        break        return "the lcm is %d"%iif __name__=="__main__":        num1=input("please enter the number1:")        num2=input("please enter the number2:")        print gcd(num1,num2)        print lcm(num1,num2)
 
5-16 家庭財務。給定一個初始金額和月開銷數(shù),使用循環(huán),確定剩下的金額和當月的支出數(shù),包括最后的支出數(shù)。Payment()函數(shù)會用到初始金額和月額度,輸出結果應該類似下面的格式(列子中的數(shù)字僅用于演示)。
Enter opening balance:100.00
Enter monthly payment: 16.13
Amount Remaining
Pymt# Paid Balance
----- ------ ---------
0 $ 0.00 $100.00
1 $16.13 $ 83.87
2 $16.13 $ 67.74
3 $16.13 $ 51.61
4 $16.13 $ 35.48
5 $16.13 $ 19.35
6 $16.13 $ 3.22
7 $ 3.22 $ 0.00
 
#!/usr/bin/env pythondef pay(paid,balance):  print "Pymt# Paid Balance"  print "----- ----- ------"  i=0  b=balance  while(balance>paid):    balance=balance - paid    i+=1    print " %d $%f $%f"%(i,paid,balance)    i+=1    print" %d $%f $%f"%(i,balance,0)if __name__=="__main__":  balance=raw_input("please enter the balance:")  paid=raw_input("please enter the paid:")  balance=float(balance)  paid=float(paid)  pay(paid,balance)

 

 

 

5-17 隨機數(shù)。熟讀隨機數(shù)模塊然后解下面的題: 生成一個有 N 個元素的由隨機數(shù) n 組成的列表, 其中 N 和 n 的取值范圍分別為: (1 < N <= 100), (0 <= n <=  231  -1)。然后再隨機從這個列表中取 N (1 <= N <= 100)個隨 機數(shù)出來, 對它們排序,然后顯示這個子集。

#!/usr/bin/pythonimport randomnum = random.randint(1,100)lst=[]for item in range(num):        tmp = random.randint(0,(pow(2,31)-1))        lst.append(tmp)lst.sort()print lst

 

 
 

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 望谟县| 太和县| 根河市| 永城市| 汽车| 祥云县| 施秉县| 寿阳县| 镶黄旗| 都匀市| 洛浦县| 宁德市| 南漳县| 肃宁县| 灵寿县| 鄂伦春自治旗| 南乐县| 慈利县| 鄱阳县| 福鼎市| 林甸县| 牙克石市| 博湖县| 沐川县| 苏州市| 买车| 桂平市| 灌南县| 平武县| 大悟县| 都兰县| 溧阳市| 巩义市| 曲靖市| 庆阳市| 苗栗县| 灵山县| 牙克石市| 勐海县| 海阳市| 繁峙县|