例21
題目:猴子吃桃問題:猴子第一天摘下若干個桃子,當即吃了一半,還不癮,又多吃了乙個第二天早上又將剩下的桃子吃掉一半,又多吃了乙個。以後每天早上都吃了前一天剩下的一半零乙個。到第10天早上想再吃時,見只剩下乙個桃子了。求第一天共摘了多少。
方法:
x = 1
for day in range(1,10):
x = (x+1)*2
print(x)
例22
題目:兩個桌球隊進行比賽,各出三人。甲隊為a,b,c三人,乙隊為x,y,z三人。已抽籤決定比賽名單。有人向隊員打聽比賽的名單。a說他不和x比,c說他不和x,z比,請程式設計序找出三隊賽手的名單。
方法1:
for a in ["x","y","z"]:
for b in ["x","y","z"]:
for c in ["x","y","z"]:
if a!= b and b!=c and c !=a and a!="x"
and c != "x"
and c != "z":
print("對手名單:\n a--%s,b--%s,c--%s"%(a,b,c))
方法2:
程式分析:a不等於x,c不等於x,z,所以a=z,b=x,c=y
m=["a","b","c"]
n=for i in range(3):
if m[i] != "a"
and m[i] !="c": ##m[0] a !=a and a!=c 不成立,b 成立,故與x比
n.insert(i,"x")
elif m[i] != "c": # a 不等於 c ,成立
n.insert(i,"z")
else:
n.insert(i,"y") #insert插入資料
print(m,"\n",n)
例23
題目:列印菱形圖案**
方法1:運用函式
def
print_diamond
(n):
star = ['*']
for index in range(0,n):
print (''.format(star[index]))
star1 =star[index] + '**'
for i in range(n-2,-1,-1):
print( ''.format(star[i]))
if __name__ == '__main__':
print_diamond(4)
方法2:雙重for迴圈
for i in range(1,5):
print(" " * (4-i),end="")
for j in range(1,2*i):
print("*",end="")
print()
for i in range(3,0,-1):
print(" " * (4-i),end="")
for k in range(1,2*i):
print("*",end="")
print()
例24
題目:有一分數序列:2/1,3/2,5/3,8/5,13/8,21/13...求出這個數列的前20項之和。
程式分析:注意數列中分子分母的規律
方法1:
x=2
y=1list=
for n in range(20):
x,y=x+y,x ##n=1時,x=3,y=2
print("=".format(eval("+".join(list)),"+".join(list)))
方法2:
a=2
b=1c=0
for i in range(1,21):
c +=a/b
a,b=a+b,a
print(c)
例25
題目:求1+2!+3!+...+20!的和。
分析:累加變成累乘
方法:
s = 1
t =
for i in range(1,21):
s *= i
print(t)
print(sum(t)-1)
注: Python基礎教程100例 練習1
學習python有一段時間了,從今天開始將python基礎教程100例中的習題完成,執行環境 python 2.7 例1 題目 有1 2 3 4個數字,能組成多少個互不相同且無重複數字的三位數?都是多少?題目分析 組成三位數,且三位數不重複,於是考慮用排除法,用條件語句將不滿足要求的數字除去 for...
python網路程式設計100例 python網路程式設計
一.urllib模組介紹 import urllib 先看個小例子,列印結果為乙個socket連線 示例一 import urllib url r fp urllib.urlopen url print fp 1.基本操作 urlopen返回物件提供方法 read readline readline...
python練習100例 Python練習100例
filename cnt 0 count the sum of result fori inrange 1,5 forj inrange 1,5 fork inrange 1,5 ifi j andi k andj k print i 100 j 10 k cnt 1 print cnt 程式 題目...