5.1 字符田字格绘制
def draw_tianzi(size):
if size < 2:
print("田字格大小至少为2")
return
part_size = size // 2
for i in range(size+1):
row = []
for j in range(size+1):
if i == 0 or i == size or j == 0 or j == size:
row.append('+')
elif i == part_size:
row.append('-')
elif j == part_size:
row.append('|')
else:
row.append(' ')
print(''.join(row))
draw_tianzi(5)
5.2 奇数判断
def isOdd(n):
if isinstance(n,int) or (isinstance(n,float) and n.integer()):
if int(n) % 2 == 1:
return True
return False
num = input()
print(isOdd(num))
5.4 质数判断
def isPrime(n):
if not isinstance(n,int) or n<1:
return False
if n == 2:
return True
if n % 2 == 0:
return False
for i in range(2, int(n**0.5)+1, 2):
if n % i == 0:
return False
return True
num = input()
print(isPrime(num))
5.5 字符数判断
def isNum(n):
try:
complex(n) #尝试转换为复数,可以处理所有数字类型
return True
except ValueError:
return False
n2 = input()
print(isNum(n2))
5.6 数字积运算
def mulit(*s):
sum = 1
for i in s:
sum *= i
return sum
s = input()
print(mulit(s))
5.7 斐波那契数列计算
def FabN(n):
if n == 0:
return 0
elif n == 1:
return 1
return FabN(n-1) + FabN(n-2)
m = eval(input())
print(FabN(m))
5.8 数据类型判断
def isType(s):
if isinstance(s, int):
return "整数"
elif isinstance(s, float):
return "小数"
elif isinstance(s, complex):
return "复数"
elif isinstance(s, str):
return "字符串"
elif isinstance(s, list):
return "列表"
elif isinstance(s, dict):
return "字典"
elif isinstance(s, set):
return "集合"
elif isinstance(s, tuple):
return "元组"
else:
return "未知类型"
s = input()
print(isType(s))