第五章作业

5.1
def draw_grid(width):
horizontal_line = '+' + '----+' * width
vertical_line = '|' + ' |' * width
for i in range(width):
print(horizontal_line)
for i in range(3):
print(vertical_line)
print(horizontal_line)
draw_grid(4)

5.2
def isodd(num):
try:
num = int(num)
if num % 2 != 0:
return True
return False
except:
return False
print(isodd(5))
print(isodd(6))
print(isodd("abc"))

5.3
def isPrime(num):
try:
num = int(num)
if num < 2:
return False
for i in range(2, int(num ** 0.5) + 1):
if num % i == 0:
return False
return True
except:
return False
print(isPrime(5))
print(isPrime(6))
print(isPrime('abc'))

5.4
def PrimeList(N):
result = []
try:
N = int(N)
for num in range(2,N):
is_prime = True
for i in range(2, int(num ** 0.5) + 1):
if num % i == 0:
is_prime = False
break
if is_prime:
result.append(num)
return " ".join(map(str,result))
except:
return ""
print(PrimeList(10))

5.5
def isNum(n):
try:
float(n)
return True
except ValueError:
try:
complex(n)
return True
except ValueError:
return False

print(isNum("2"))
print(isNum("1+3j"))
print(isNum("abc"))

5.6
def multi(*args):
result = 1
for num in args:
result *= num
return result
print(multi(1,2,3,4,5))

5.7
def FabN(n):
if n == 0:
return 0
elif n == 1:
return 1
return FabN(n - 1) + FabN(n - 2)
print(FabN(6))

5.8
def isType(data):
if isinstance(data,int):
return "整数"
elif isinstance(data,float):
return "小数"
elif isinstance(data,complex):
return "复数"
elif isinstance(data,str):
return "字符串"
elif isinstance(data,list):
return "列表"
elif isinstance(data,dict):
return "字典"
elif isinstance(data,set):
return "集合"
elif isinstance(data,tuple):
return "元组"
else:
return "未知类型"
print(isType(1))
print(isType(1.2))
print(isType(1+7j))
print(isType("zxc"))








posted @ 2025-04-20 17:37  piuky  阅读(9)  评论(0)    收藏  举报