1.水仙花数
# 求100-999之间的水仙花数:指一个三位数,其各位数字立方和等于该数本身
# 从100开始循环遍历到999
for i in range(100,1000):
# 个位数
geWei = i % 10
# 十位数
shiWei = i//10 % 10
# 百位数
baiWei = i //100
if geWei**3 + shiWei**3 + baiWei**3 == i:
print("100-999之间的水仙花数有:"+str(i))
2.闰年
# 求2000年到2100年之间的闰年
# 闰年:可以整除4,但是不能整除100 或者 能够整除400
for year in range(2000, 2101):
# 判断是否是闰年
if year % 4 == 0 and year % 100 != 0 or year % 400 ==0:
print("2000年到2100年之间的闰年有:"+str(year)+"年")
3.九九乘法表
# %d print语句中的占位符代表一个整数
# %f 浮点型
# %s 字符串
# \t转义字符 \n回车换行
for i in range(1,10):
for j in range(1,i+1):
print("%d*%d=%d\t"%(i,j,i*j),end='')
# 打印换行
print('')
4.猜数游戏
# 系统随机生成一个数字,用户通过输入一个数字去猜,系统提示是否猜中(没有猜中的话,提示大小),直到猜中为止
# python中通过random随机产生一个数字
# 前提需要导入random
import random
# 获得随机的整数 random.randint(1,9) 随机产生1-9之间的随机数
num = random.randint(1,99)
# 用户输入的数字
# inputNum = -1
#是否猜中
flag = False
while not flag:
inputNum = int(input("请输入一个数字:"))
if inputNum > num:
print("你猜的数字大了")
elif inputNum < num:
print("你猜的数字小了")
else:
print("你猜对了!")
flag = True
print("程序结束")
print(num)
5.求和
# 求1-2+3-4+5······99的结果
#写法一:直接用所有奇数的和减去偶数的和
# sum1 = 0
# sum2 = 0
# for i in range(1,100):
# if i % 2 == 0:
# sum1 +=i
# else:
# sum2 +=i
# print("结果为:"+str(sum2-sum1))
# 写法二 按照算数式的逻辑去写
sum = 0
for i in range(1,100):
if i%2 !=0:
sum +=i
else:
sum -=i
print("结果为:"+str(sum))
6.用户登录系统
# 用户输入用户名和密码登录系统,共有三次登录机会,输入正确登录成功,否则提示错误 或者 提示错误达到三次退出系统
for i in range(1,4):
name = input("请输入用户名:")
pwd = input("请输入密码:")
# 判断用户名和密码是否正确
if name =='admin' and pwd =='123456':
print("欢迎%s,登录成功!"%name)
break
else:
if i < 3:
print("用户名和密码输入不正确,你还有%d次机会:"%(3-i))
else:
print("输入错误达到3次,自动退出系统")
7.查找列表中的最大值与最小值(不使用max与min方法)
list1 =[1,3,7,9,2,6,8]
# 常规方法 max(list1),min(list1)
# 循环遍历 比较元素获得最大最小值
# 存放最大值
max = list1[0]
# 存放最小值
min = list1[0]
for i in range(len(list1)):
if list1[i] > max:
max = list1[i]
if list1[i] < min:
min = list1[i]
print("列表中的最大值为:"+str(max))
print("列表中的最小值为:"+str(min))
8.阶乘求和
# 阶乘 n! = n*(n-1)*(n-2)···*1
# 求1+2!+3!+4!的和
# 由用户决定计算到哪个数的阶乘的和
n = int(input("请输入一个数字:"))
total = 0
for i in range(1,n+1):
sum = 1
for j in range(1,i+1):
sum *=j
total +=sum
print("从1到%d的阶乘的和为:%d"%(n,total))