第五章
p151
5.2:實現isodd()函數,參數為整數,如果參數為奇數,返回true,否則返回false。
def isodd(s):
x=eval(s)
if(x%2==0):
return False
else:
return True
x=input("請輸入一個整數:")
print(isodd(x))
運行結果:
/////////////////////////////////////////////////////////////////////////////////////
題5.3:實現isnum()函數,參數為一個字符串,如果這個字符串屬於整數、浮點數或復數的表示,則返回true,否則返回false。
def isnum(s):
try:
x=eval(s)
if((type(x)==int)|(type(x)==float)|(type(x)==complex)):
return True
else:
return False
except NameError:
return False
x=input("請輸入一個字符串:")
print(isnum(x))
運行結果:
/////////////////////////////////////////////////////////////////////////////////////
題5.4:實現multi()函數,參數個數不限,返回所有參數的乘積。
def multi(x):
xlist=x.split(",")
xlist = [int(xlist[i]) for i in range(len(xlist))] #for循環,把每個字符轉成int值
num=1
for i in xlist:
num=num*i
print(num)
s=input("請輸入數字,並用,號隔開:")
multi(s)
運行結果:
////////////////////////////////////////////////////////////////////////////////////
題5.5:實現isprime()函數,參數為整數,要有異常處理,如果整數是質數返回ture,否則返回false。
try:
def isprime(s):
i=2
m=0
for i in range(2,s-1):
if(s%i==0):
i+=1
m+=1
else:
i+=1
if(m>0):
return False
else:
return True
except NameError:
print("請輸入一個整數!")
s=eval(input("請輸入任意一個整數:"))
print(isprime(s))
運行結果:
////////////////////////////////////////////////////////////////////////////////////