作业1:输入数,判断这个数是否是质数(要求使用函数+for循环)
def isPrime(num):
flag = True
for i in range(2, num):
if num % i == 0:
flag = False
break
if flag:
print(f"{num}是质数")
else:
print(f"{num}不是质数")
num = int(input("请输入您要判断的数:"))
isPrime(num)
作业2:要求50~150之间的质数是哪些?
def isPrime():
ls = []
for prime in range(50, 150):
flag = True
for i in range(2, prime):
if prime % i == 0:
flag = False
break
if flag:
ls.append(prime)
else:
continue
return ls
print(isPrime())
作业3:打印输出标准水仙花数,输出这些水仙花数
def narcissistic_Number():
ls = []
for i in range(100, 1000):
bit = i % 100 % 10
ten = i // 10 % 10
hundred = i // 100
if (bit**3 + ten**3 + hundred**3 ==i):
ls.append(i)
return ls
print(narcissistic_Number())
作业4:验证:任意一个大于9的整数减去它的各位数字之和所得的差,一定能被9整除.
def check():
"""
验证:任意一个大于9的整数减去它的各位数字之和所得的差,一定能被9整除.
"""
num = int(input("请输入您要验证的整数:"))
if num < 10:
return "输入的数不符合要求!"
temp = num
sumNum = 0
while temp != 0:
sumNum += temp % 10
temp = temp // 10
if (num - sumNum) % 9 == 0:
return True
else:
return False
print(check())
作业5:一个五位数,若在它的后面写上一个7,得到一个六位数A,若在它前面写上一个7,得到一个六位数B,B是A的五倍,求此五位数.
for i in range(10000, 100000):
a = i * 10 + 7
b = 7 * 100000 + i
if b / a == 5:
print(i)
break
作业6:有一种最简真分数,它们的分子(molecule)与分母(denominator)的乘积都是140,把所有这样的真分数从小到大打印出来
for molecule in range (1, 12):
for denominator in range(molecule, 141):
if molecule * denominator == 140 and not(molecule%2==0 and denominator%2==0):
print(f"{molecule}/{denominator}")
作业7:某数被80除所得的商,不但是7的倍数,而且用2,3,4,5,6去除余数都是1,求这 个自然数.
def hw11():
index = 560
while True:
if (index // 80 % 7 ==0) and index % 2 == 1 and index % 3 == 1 and index % 4 == 1 and index % 5 == 1 and index % 6 == 1:
return index
index += 1
作业8:编程求出满足以下条件的三位数:它除以11所得的商等于它各位数字之和
def hw12():
for i in range(100, 1000):
bit = i % 100 % 10
ten = i % 100 // 10
hundred = i // 100
if i // 11 == (bit + ten + hundred):
print(i)
作业9:有一堆硬币,每次只能拿一个或者两个,求最少多少次可以拿完硬币
[10, 8, 5, 3, 27, 99]
def hw13():
ls = [10, 8, 5, 3, 27, 99]
count = 0
for i in ls:
if i & 1 == 0:
count += i // 2
else:
count += i // 2 + 1
return count
作业10:求1~100之间不能被3整除的数之和
def hw14():
sumNum = 0
for i in range(1, 101):
if i % 3 != 0:
sumNum += i
return sumNum
print(hw15())
作业11:给定一个正整数N,找出1到N(含)之间所有质数的总和
def hw15(N):
sumNum = 0
for i in range(1, N+1):
if isPrime(i):
sumNum += i
return sumNum
def isPrime(num):
flag = True
for i in range(2, num):
if num % i == 0:
flag = False
break
return flag
num = int(input("请输入一个整数:"))
print(hw15(num))
作业12:计算PI(公式如下:PI=4(1-1/3+1/5-1/7+1/9-1…)
def hw19(n):
PI = 4
num = 3
for i in range(2, n+1):
if i % 2 == 0:
PI -= (4 / num)
else:
PI += (4 / num)
num += 2
return PI
print(hw19(100000))