作业1、判断以下哪些不能作为标识符
A、a
B、¥a
C、_12
D、$a@12
E、false
F、False
B D E F
作业2:
输入数,判断这个数是否是质数(要求使用函数 + for循环)
def isprime(num):
if num > 1 :
for i in range(2,num):
if (num % i) == 0:
print(num,"不是质数")
print(i,"乘于",num//i,"是",num)
break
else:
print(num,"是质数")
else:
print("你是猴子请来的救兵吧!!")
num = int(input("请输入一个数:"))
isprime(num)
作业3:求50~150之间的质数是那些?
def isprime():
for num in range(50,151):
for i in range(2,num):
if (num % i) == 0:
break
else:
print(num)
isprime()
作业4:打印输出标准水仙花数,输出这些水仙花数
def num():
for flower in range(100,1000):
a = flower//100
b = flower//10%10
c = flower%10
if flower == a**3+b**3+c**3:
print(flower)
num()
作业5:验证:任意一个大于9的整数减去它的各位数字之和所得的差,一定能被9整除.
def num(a):
if a <= 9:
return
count = 0
start = a
while a > 0:
count +=a % 10
num //= 10
if (start - count) % 9 == 0:
return print('能被9整除')
return print('不能被9整除')
a = int(input('请输入一个大于9的整数:'))
print(num(a))
作业6:一个五位数,若在它的后面写上一个7,得到一个六位数A,若在它前面写上一个7,得到一个六位数B,B是A的五倍,求此五位数.
def num ():
for i in range(10000,100000):
num1=i * 10 + 7
num2=i + 700000
if num2/num1==5:
print(i)
num()
作业7:求十进制数字9的二进制编码:
求十进制数字9的二进制编码中的1的数量
def two(num):
s = []
binstring = ""
print(f"{num}的二进制编码为:",end="")
while num > 0:
rem = num % 2
s.append(rem)
num //= 2
while len(s) > 0:
binstring += str(s.pop())
print(binstring)
num = int(input('请输入一个正整数:'))
two(num)
作业8:求1~100之间不能被3整除的数之和
def s():
count = 0
for n in range(1, 101):
if n % 3 != 0:
count += n
print(f'1~100之间不能被3整除的数之和为{count}')
s()
作业9:给定一个正整数N,找出1到N(含)之间所有质数的总和
def isprime(N):
s = 0
for num in range(2,N+1):
for i in range(2,num):
if (num % i) == 0:
break
else:
s+=num
return s
N = int(input("请输入一个数:"))
print(f"{isprime(N)}")
作业10:计算PI(公式如下:PI=4(1-1/3+1/5-1/7+1/9-1.......)
def calc(n):
s, sign = 0, 1
for i in range(1, n+1):
item = sign / (2*i - 1)
s += item
sign *= -1
return 4 * s
if __name__ == "__main__":
s = calc(1000000)
print(f"{s}")
作业11:求a+aa+aaa+.......+aaaaaaaaa=?其中a为1至9之中的一个数,项数也要可以指定
#求a+aa+aaa+.......+aaaaaaaaa=?其中a为1至9之中的一个数,项数也要可以指定
def num (n,m): #n代表1至9之中的一个数,m代表项数
s = n
for i in range (1,m):
n=n*10+n
s = s + n
return s
n = int (input("请输入1-9中一个数:"))
m = int (input("项数:"))
print(f"和为{num(n,m)}")
作业12: 找出10000以内能被5或6整除,但不能被两者同时整除的数(函数)
def num(n):
for i in range(1,n+1):
if(i % 5 == 0 or i % 6 == 0)and not (i % 5 == 0 and i % 6 == 0):
print(i)
print(num(10000))
作业13:不死兔子和跳楼梯问题
不死兔
def rabbit(n):
if n <= 4:
return 1
else:
return rabbit(n - 1) + rabbit(n - 4)
n = int (input("月数"))
print(rabbit(n))
跳楼梯
def num(n):
if == 1 or n ==2:
return n
else:
return num(n - 1) + num(n - 2)
n = int (input("月数"))
print(num(n))
作业14:汉诺塔问题