目录
1.编写程序,计算小于1000的所有整数中能够同时被5和7整除的最大整数。
2.编写程序,计算1+2+。。。+100的和。
3.编写程序输出100以内的素数。
4.编写程序,实现抓狐狸游戏。假设墙上有5个洞(编号分别为0、1、2、3、4),其中一个洞里有狐狸,人类玩家输入洞口编号,如果洞里有狐狸就抓到了;如果洞里没有狐狸就第二天再来抓。但在第二天人类玩家来抓之前,狐狸会跳到隔壁的洞里。
5.小明单位发了100元的购物卡,小明到超市买三类洗化用品,洗发水(15元),香皂(2元),牙刷(5元)。要把100元正好花掉,可有哪些购买结合?
6.求两个数的最大公约数和最小公倍数。(提示:公约数一定小于等于两数中的小的那个数,且能同时被两个数整除;公倍数一定大于等于两数中的大数,且是大数的倍数又能被两数中的小数整除)
7.编写程序,求1!+3!+5!+7!+9!。
8.编写程序,让用户输入一个整数,如果输入的是正数就输出1,如果输入的是负数就输出-1,否则输出0。
9.输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。
10.某百货公司为了促销,采用购物打折的办法。1000元以上者,按九五折优惠;2000元以上者,按九折优惠;3000元以上者,按八五折优惠;5000元以上者,按八折优惠。编写程序,输入购物款数,计算并输出优惠价。
程序代码:
a = []
for i in range(1000):
if i%5 == 0 and i%7 == 0:
a.append(i)
j=max(a)
print(j)
运行结果:
C:\ProgramData\Anaconda3\python.exe D:/blue3/01.py
980
进程已结束,退出代码0
程序代码:
a = []
for i in range(1,101):
a.append(i)
b=sum(a)
print(b)
运行结果:
C:\ProgramData\Anaconda3\python.exe D:/blue3/02.py
5050
进程已结束,退出代码0
程序代码:
a = []
for x in range(100):
if x <2:
continue
for i in range(2,x):
if x % i == 0:
break
else:
a.append(x)
print(a)
运行结果:
C:\ProgramData\Anaconda3\python.exe D:/blue3/03.py
[2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97]
进程已结束,退出代码0
程序代码:
from random import sample
print("游戏开始啦!")
fox =sample(range(5),1)
a = int("".join(list(map(str, fox))))
print(a)
while 1:
x = int(input("请输入你选择的洞口:"))
if x != a:
print("错啦!明天再来吧!")
print("第二天啦!")
if a < 4:
a += 1
if a == 4:
a -= 1
print()
continue
if x == a:
print("抓到狐狸啦!")
exit(0)
运行结果:
C:\ProgramData\Anaconda3\python.exe D:/blue3/04.py
游戏开始啦!
0
请输入你选择的洞口:1
错啦!明天再来吧!
第二天啦!
请输入你选择的洞口:2
错啦!明天再来吧!
第二天啦!
请输入你选择的洞口:3
错啦!明天再来吧!
第二天啦!
请输入你选择的洞口:4
错啦!明天再来吧!
第二天啦!
请输入你选择的洞口:2
错啦!明天再来吧!
第二天啦!
请输入你选择的洞口:3
抓到狐狸啦!
进程已结束,退出代码0
程序代码:
for i in range(7):
for j in range(51):
for k in range(20):
if 15*i+2*j+k*5 ==100:
print("洗发水:",i,"瓶","香皂:",j,"块","牙刷:",k,"把")
运行结果:
C:\ProgramData\Anaconda3\python.exe D:/blue3/05.py
洗发水: 0 瓶 香皂: 5 块 牙刷: 18 把
洗发水: 0 瓶 香皂: 10 块 牙刷: 16 把
洗发水: 0 瓶 香皂: 15 块 牙刷: 14 把
洗发水: 0 瓶 香皂: 20 块 牙刷: 12 把
洗发水: 0 瓶 香皂: 25 块 牙刷: 10 把
洗发水: 0 瓶 香皂: 30 块 牙刷: 8 把
洗发水: 0 瓶 香皂: 35 块 牙刷: 6 把
洗发水: 0 瓶 香皂: 40 块 牙刷: 4 把
洗发水: 0 瓶 香皂: 45 块 牙刷: 2 把
洗发水: 0 瓶 香皂: 50 块 牙刷: 0 把
洗发水: 1 瓶 香皂: 0 块 牙刷: 17 把
洗发水: 1 瓶 香皂: 5 块 牙刷: 15 把
洗发水: 1 瓶 香皂: 10 块 牙刷: 13 把
洗发水: 1 瓶 香皂: 15 块 牙刷: 11 把
洗发水: 1 瓶 香皂: 20 块 牙刷: 9 把
洗发水: 1 瓶 香皂: 25 块 牙刷: 7 把
洗发水: 1 瓶 香皂: 30 块 牙刷: 5 把
洗发水: 1 瓶 香皂: 35 块 牙刷: 3 把
洗发水: 1 瓶 香皂: 40 块 牙刷: 1 把
洗发水: 2 瓶 香皂: 0 块 牙刷: 14 把
洗发水: 2 瓶 香皂: 5 块 牙刷: 12 把
洗发水: 2 瓶 香皂: 10 块 牙刷: 10 把
洗发水: 2 瓶 香皂: 15 块 牙刷: 8 把
洗发水: 2 瓶 香皂: 20 块 牙刷: 6 把
洗发水: 2 瓶 香皂: 25 块 牙刷: 4 把
洗发水: 2 瓶 香皂: 30 块 牙刷: 2 把
洗发水: 2 瓶 香皂: 35 块 牙刷: 0 把
洗发水: 3 瓶 香皂: 0 块 牙刷: 11 把
洗发水: 3 瓶 香皂: 5 块 牙刷: 9 把
洗发水: 3 瓶 香皂: 10 块 牙刷: 7 把
洗发水: 3 瓶 香皂: 15 块 牙刷: 5 把
洗发水: 3 瓶 香皂: 20 块 牙刷: 3 把
洗发水: 3 瓶 香皂: 25 块 牙刷: 1 把
洗发水: 4 瓶 香皂: 0 块 牙刷: 8 把
洗发水: 4 瓶 香皂: 5 块 牙刷: 6 把
洗发水: 4 瓶 香皂: 10 块 牙刷: 4 把
洗发水: 4 瓶 香皂: 15 块 牙刷: 2 把
洗发水: 4 瓶 香皂: 20 块 牙刷: 0 把
洗发水: 5 瓶 香皂: 0 块 牙刷: 5 把
洗发水: 5 瓶 香皂: 5 块 牙刷: 3 把
洗发水: 5 瓶 香皂: 10 块 牙刷: 1 把
洗发水: 6 瓶 香皂: 0 块 牙刷: 2 把
洗发水: 6 瓶 香皂: 5 块 牙刷: 0 把
进程已结束,退出代码0
程序代码:
def common_divisor(n ,m):
a,b = max(n,m),min(n,m)
a,b = b,a%b
while b:
a,b=b,a%b
return a
def common_multiple(n,m):
return n*m//common_divisor(n,m)
print("最小公约数:",common_divisor(5,6))
print("最大公倍数:",common_multiple(5,6))
运行结果:
C:\ProgramData\Anaconda3\python.exe D:/blue3/06.py
最小公约数: 1
最大公倍数: 30
进程已结束,退出代码0
程序代码1:
def jie(n):
if n == 0:
return 1
else:
return n*jie(n-1)
a = [1,3,5,7,9]
b = []
for i in a:
b.append(jie(i))
print(sum(b))
运行结果1:
C:\ProgramData\Anaconda3\python.exe D:/blue3/07.py
368047
进程已结束,退出代码0
程序代码2:
a = [1,3,5,7,9]
b = []
num = 1
for i in a:
if i < 0:
print("{}的没有阶乘".format(i))
elif i == 0:
print("{}的阶乘为:1".format(i))
b.append(1)
else:
for j in range(1,i+1):
num *= j
b.append(num)
print("{}的阶乘为:".format(i),num)
num = 1
print(sum(b))
运行结果2:
C:\ProgramData\Anaconda3\python.exe D:/blue3/07.py
1的阶乘为: 1
3的阶乘为: 6
5的阶乘为: 120
7的阶乘为: 5040
9的阶乘为: 362880
368047
进程已结束,退出代码0
程序代码3:
from functools import reduce
a = [1,3,5,7,9]
b = []
for i in a:
x=reduce(lambda x,y:x*y,range(1,i+1))
b.append(x)
print(sum(b))
运行结果3:
C:\ProgramData\Anaconda3\python.exe D:/blue3/07.py
368047
进程已结束,退出代码0
程序代码4:
import math
a = [1,3,5,7,9]
b = []
for i in a:
value = math.factorial(i)
b.append(value)
print(sum(b))
运行结果4:
C:\ProgramData\Anaconda3\python.exe D:/blue3/07.py
368047
进程已结束,退出代码0
程序代码:
number = int(input("请输入一个数字:"))
if number < 0:
print("-1")
elif number > 0:
print("1")
else:
print("0")
运行结果:
C:\ProgramData\Anaconda3\python.exe D:/blue3/08.py
请输入一个数字:0
0
进程已结束,退出代码0
C:\ProgramData\Anaconda3\python.exe D:/blue3/08.py
请输入一个数字:1
1
进程已结束,退出代码0
C:\ProgramData\Anaconda3\python.exe D:/blue3/08.py
请输入一个数字:-5
-1
进程已结束,退出代码0
程序代码:
x = input("请输入一行字符:")
a = 0
b = 0
c = 0
d = 0
for ch in x:
if ch.islower() or ch.isupper():
a += 1
continue
if ch == " ":
b += 1
continue
if ch.isdigit():
c += 1
continue
else:
d += 1
print("英文字母{}个".format(a),"空格{}个".format(b),"数字{}个".format(c),"其它字符{}个".format(d))
运行结果:
C:\ProgramData\Anaconda3\python.exe D:/blue3/09.py
请输入一行字符:wo ai dudu 520 , . ,
英文字母8个 空格6个 数字3个 其它字符3个
进程已结束,退出代码0
程序代码:
x = int(input("请输入用户的购物款数:"))
if x <= 1000:
print("不打折!")
exit(0)
if x > 1000 and x < 2000:
x *= 0.95
print("打完折为:",x,"元")
exit(0)
if x > 2000 and x < 3000:
x *=0.9
print("打完折为:",x,"元")
exit(0)
if x > 3000 and x < 5000:
x *=0.85
print("打完折为:",x,"元")
exit(0)
if x > 5000:
x *=0.8
print("打完折为:",x,"元")
exit(0)
运行结果:
C:\ProgramData\Anaconda3\python.exe D:/blue3/10.py
请输入用户的购物款数:6000
打完折为: 4800.0 元
进程已结束,退出代码0