这里写自定义目录标题
- 1.用户输入两个数a、b。如果a能被b整除或a加b大于1000,则输出a;否则输出b。
- 2.请输入一个数,判断这个数是偶数还是奇数,如果使用偶数,请判断从1到该数是3的倍数有哪些,如果是奇数,请判断从1到该数是5的倍数有哪些
- 3.某商店T恤的价格为35元/件(2件9折,3件以上8折),裤子的价格为120 元/条(2条以上9折).小明在该店买了3件T恤和2条裤子,请计算并显示小明应该付多少钱?
- 4.鸡兔同笼,从上面看有35个头,从下面看有94只脚,请问鸡有几只,兔有几只?
- 5.猜拳游戏:石头、剪刀、布的游戏
- 6.判断以下哪些不能作为标识符(B、D)
- 7.求50~150之间的质数是那些?
- 8.打印输出标准水仙花数,输出这些水仙花数
- 9.验证:任意一个大于9的整数减去它的各位数字之和所得的差,一定能被9整除.
- 10.一个五位数,若在它的后面写上一个7,得到一个六位数A,若在它前面写上一个7,得到一个六位数B,B是A的五倍,求此五位数.
- 11.有一堆硬币,每次只能拿一个或者两个,求最少多少次可以拿完硬币 [10, 8, 5, 3, 27, 99]
- 12.如果两个素数之差为2,这样的两个素数就叫作"孪生数",找出100以内的所有"孪生数".
- 13.给定一个列表,求最大值(不能使用系统api),求最小值,求平均值、求和
- 14.将list中的重复数据去重,至少使用两种方案
- 15.两个列表进行合并操作
- 16.使用列表判断一个列表是否在另外一个列表中
- 17.列表的反转 列表的排序
- 18.如何将0-10随机存入列表中
1.用户输入两个数a、b。如果a能被b整除或a加b大于1000,则输出a;否则输出b。
a = int(input("请输入第一个数:"))
b = int(input("请输入第二个数:"))
if a % b == 0 or a + b > 1000:
print(f"{a}")
else:
print(f"{b}")
2.请输入一个数,判断这个数是偶数还是奇数,如果使用偶数,请判断从1到该数是3的倍数有哪些,如果是奇数,请判断从1到该数是5的倍数有哪些
num = int(input("请输入一个数:"))
if num % 2 == 0:
print(f"{num}是偶数,从1到{num}是3的倍数的数有:")
for i in range(1,num + 1):
if i % 3 == 0:
print(i)
else:
print(f"{num}是奇数,从1到{num}是5的倍数的数有:")
for j in range(1,num + 1):
if j % 5 == 0:
print(j)
3.某商店T恤的价格为35元/件(2件9折,3件以上8折),裤子的价格为120 元/条(2条以上9折).小明在该店买了3件T恤和2条裤子,请计算并显示小明应该付多少钱?
shirts_price = 35
pants_price = 120
x = int(input("请输入买了几件T恤:"))
y = int(input("请输入买了几条裤子:"))
if x == 2:
shirts_price = shirts_price * 0.9
if x >= 3:
shirts_price = shirts_price * 0.8
if y > 2:
pants_price = pants_price * 0.9
print(f"小明应该付{x * shirts_price + y * pants_price}元!")
4.鸡兔同笼,从上面看有35个头,从下面看有94只脚,请问鸡有几只,兔有几只?
for chicken in range(0,36):
rabbit = 35 - chicken
if 2 * chicken + 4 * rabbit == 94:
print(f"鸡有{chicken}只,兔子有{rabbit}只")
5.猜拳游戏:石头、剪刀、布的游戏
import random
computer = random.randint(1,3)
while True:
guess = int(input("请出拳,选择对应数字(1.石头 2.剪刀 3.布):"))
if guess == 1:
if computer == 1:
print("平局")
elif computer == 2:
print("恭喜你,赢了")
else:
print("输了")
elif guess == 2:
if computer == 1:
print("输了")
elif computer == 2:
print("平局")
else:
print("恭喜你,赢了")
elif guess == 3:
if computer == 1:
print("恭喜你,赢了")
elif computer == 2:
print("输了")
else:
print("平局")
else:
print("错误!不符合出拳规则。")
choice = input("是否继续(Y/N):")
if choice == "n" or choice == "N":
break
6.判断以下哪些不能作为标识符(B、D)
A、a
B、¥a
C、_12
D、$a@12
E、false
F、False
标识符是由字符(A~Z 和 a~z)、下划线和数字组成,但第一个字符不能是数字。
标识符不能和 Python 中的保留字相同。
Python中的标识符中,不能包含空格、@、% 以及 $ 等特殊字符。
7.求50~150之间的质数是那些?
list1 = []
for i in range(50,151):
flag = True
for j in range(2,i // 2 + 1):
if i % j == 0:
flag = False
break
if flag:
list1.append(i)
print(f"50~150之间的质数是{list1}")
8.打印输出标准水仙花数,输出这些水仙花数
list1 = []
for i in range(100,1000):
a = int(i / 100)
b = int(i % 100 / 10)
c = int(i % 100 % 10)
if i == a ** 3 + b ** 3 + c ** 3:
list1.append(i)
print(f"水仙花数有:{list1}")
9.验证:任意一个大于9的整数减去它的各位数字之和所得的差,一定能被9整除.
num = int(input("请输入一个大于9的整数:"))
if num < 100:
a = num % 10
b = num // 10
sums = a + b
print(sums)
if (num - sums) % 9 == 0:
print("该数可以被9整除,验证成功!")
else:
print("该数不能被9整除,验证失败!")
elif num >= 100 and num <= 1000:
a = num % 100 % 10
b = num % 100 //10
c = num // 100
sums = a + b + c
print(sums)
if (num - sums) % 9 == 0:
print("该数可以被9整除,验证成功!")
else:
print("该数不能被9整除,验证失败!")
10.一个五位数,若在它的后面写上一个7,得到一个六位数A,若在它前面写上一个7,得到一个六位数B,B是A的五倍,求此五位数.
for num in range(10000,100000):
numA = num * 10 + 7
numB = num + 700000
if numB == numA * 5:
print(num)
11.有一堆硬币,每次只能拿一个或者两个,求最少多少次可以拿完硬币 [10, 8, 5, 3, 27, 99]
times = 0
ls = [10, 8, 5, 3, 27, 99]
for i in ls:
a = i % 2
if a == 0:
times += (i // 2)
else:
times += (i // 2 + 1)
print(f"最少需要拿{times}次硬币")
12.如果两个素数之差为2,这样的两个素数就叫作"孪生数",找出100以内的所有"孪生数".
ls = []
for num in range(2,101): #先找素数
flag = True
for i in range(2,num // 2 + 1):
if num % i == 0:
flag = False
break
if flag:
ls.append(num) #素数
index = 1
while index < len(ls):
if ls[index] - ls[index - 1] == 2:
print(f"{ls[index]}和{ls[index - 1]}是孪生数")
index += 1
13.给定一个列表,求最大值(不能使用系统api),求最小值,求平均值、求和
ls = [5, 4, 7, 9, 10, 21, 12, 54, 87, 94, 62]
print(f'最大值为:{max(ls)}')
print(f'最小值为:{min(ls)}')
print(f'和为:{sum(ls)}')
print(f'平均值为:{sum(ls) / len(ls)}')
14.将list中的重复数据去重,至少使用两种方案
ls = [2,4,5,7,9,12,2,21,5,4,54,7,88,9]
print(f'原列表为:{ls}')
ls1 = []
for n in ls:
if n not in ls1:
ls1.append(n)
print(f'去重后的列表为:{ls1}')
15.两个列表进行合并操作
ls1 = [1,2,3,4,5,0]
ls2 = [7,9,21,12,6]
print(f"ls1为:{ls1},ls2为{ls2}")
ls1.extend(ls2)
print(f"合并后的列表为:{ls1}")
16.使用列表判断一个列表是否在另外一个列表中
ls1 = [1,2,3,4,5]
ls2 = [1,2,3,3,4,5,6,7,8]
for i in ls1:
if i in ls2:
print("ls1在ls2中")
break
else:
print("ls1不在ls2中")
break
17.列表的反转 列表的排序
ls = [1, 2, 3, 54, 27, 12, 88]
for i in ls:
ls1 = list(reversed(ls))
print("ls反转后为:%s" % ls1)
ls1.sort()
print("ls1排序后为:%s" % ls1)
18.如何将0-10随机存入列表中
import random
ls = []
for i in range(11):
ls.append(random.randint(0,10))
print(f"将0-10随机存入列表中:{ls}")