学python的第四,五天!

作业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:汉诺塔问题

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

溢彩风华

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值