# 1、百钱买百鸡的问题算是一套非常经典的不定方程的问题,题目很简单:
# 公鸡5文钱一只,母鸡3文钱一只,小鸡3只一文钱,
# 用100文钱买一百只(x)鸡, 其中公鸡,母鸡,小鸡都必须要有,问公鸡,母鸡,小鸡要买多少只刚好凑足100文钱。
def chicken():
for x in range(1,20): #公鸡不能超过20只:5 * 20 = 100
for y in range(1,33):
if 5*x+3*y+(100-x-y)/3 == 100:
print("公鸡%s,母鸡%s,小鸡%s"%(x,y,100-x-y))
chicken()
# 2、制作4位字符组成随机验证码4位字符组成,不区分大小写
# 流程:
# - 用户执行程序
# - 给用户显示需要输入的验证码
# - 用户输入的值
# 用户输入的值和显示的值相同时实现正确信息;
# 否则继续生成随机验证码继续等待用户输入
# 生成随机验证码代码示例:
# # (print(chr(97)):输出结果为a)
import random
def fun_code():
while True:
code = ""
for i in range(4):
code += random.choice("asdfghjklZXCVBqerty0123456789sxcaSCDASax")
print(code)
in_code = input("请输入验证码:")
if in_code.lower() == code.lower():
print("验证成功")
break
else:
print("验证失败")
fun_code()
#3、使用递归的方式打印九九乘法表
#方法一
def mul9x9(x):
# 计算打印每一行的内容 x控制的是行
# 下面这个循环控制的是列
for i in range(1, x + 1):
print('%d x %d = %d' % (x, i, x * i), end='\t')
print()
# 结束条件是9行
if x == 9:
return
else:
return mul9x9(x + 1)
mul9x9(1)
#方法二
def get_result(num):
if num == 1:
print("1 * 1 = 1")
else:
get_result(num - 1)
for i in range(1, num + 1):
print("%d * %d = %d" % (i, num, i * num), end="\t")
print()
get_result(10)
# 4、输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。
# 方法一
string = input("请输入一行字符串:")
dic = {}
for i in string:
if i in dic:
dic[i]+=1
else:
dic[i]=1
print(dic)
# 方法二
string = input("请输入一行字符串:")
flag = 0
for i in string:
if string.count(i,flag) == string.count(i):
print(i,string.count(i,flag))
flag+=1
#方法三
print("请输入一行字符:")
str01 = input()
digit_mum = 0
string_num = 0
space_num = 0
other_num = 0
for s in str01:
if s.isdigit():
digit_mum += 1
elif s.isalpha():
string_num += 1
elif s.isspace():
space_num += 1
else:
other_num += 1
print("其中英文字母%d个、空格%d个、数字%d个、其它字符%d个" % (string_num, space_num, digit_mum, other_num))