python第六次作业

    1.不死兔子

# 不死兔子
 
# 现有一只兔子,过四个月就会成熟,生小兔子,小兔子四个月后也会成熟
# 假设兔子不会死亡,一段时间,一共有多少只兔子
month = int(input("输入:"))
 
 
def get_robbit (month):
  if month <= 4 :
    return 1
  else:
    return get_robbit(month-4)+ get_robbit(month-1)
 
 
print(get_robbit(month)) 

    2. 输入字符串,判断该字符串是否是回文字符串

# 回文字符串
 
 
str1 = str(input("输入"))
 
 
def is_palindromic (str1):
  str2 = str1[::-1]
  if str1 == str2 :
    return(True)
  else:
    return(False)
  
 
print(is_palindromic(str1))


    3.给定一个正整数N,找出1到N(含)之间所有质数的总和

#函数检测素数
def is_sushu(num):
    for i in range(2, num // 2 + 1):
        if num % i == 0:
            return False
    return True
 
#初始化数据
N = int(input("请输入一个数:"))
temp = 0
#循环求和
for i in range(1 , N + 1) :
    if is_sushu(i) :
        temp += i
#输出
print(temp)


    4.求  a+aa+aaa+.......+aaaaaaaaa=?其中a为1至9之中的一个数,项数也要可以指定。

	# 求  a+aa+aaa+.......+aaaaaaaaa=?其中a为1至9之中的一个数,项数也要可以指定。
 
 
num = int(input("输入数字:"))
term = int (input("输入项数:"))
all = 0
 
for i in range(1,term+1):
  all += int(str(num)*i)
print(all)


    5.合并两个有序数组,合并后还是有序列表

#初始化数组
array1 = input("请输入第一个数组:")
array2 = input("请输入第二个数组:")
#转换数组内每一个数据的类型为整型
array1 = [int(i) for i in array1]
array2 = [int(j) for j in array2]
#合并
for i in array2 :
    array1.append(i)
#插入排序
for i in range(len(array1) - 1) :
    for j in range(len(array1) - 1 , 0 , -1) :
        if array1[j] < array1[j - 1] :
            array1[j] , array1[j - 1] = array1[j - 1] , array1[j]
print(array1)


    6.给定一个非负整数数组A,将该数组中的所有偶数都放在奇数元素之前

# 	给定一个非负整数数组A,将该数组中的所有偶数都放在奇数元素之前
 
 
list1 = list(input("输入").split())
for i in list1:
  if int(i) % 2 == 0:
    j = i
    list1.remove(i)
    list1.insert(0,j)
print(list1)
 


    7.给定一个非负整数数组A,该数组的元素都是从1~N的元素组成,现在发现其中确实一个,请找出这个确实的元素

    

# 	给定一个非负整数数组A,该数组的元素都是从1~N的元素组成,
# 现在发现其中确实一个,请找出这个确实的元素
 
list1 = [1,2,3,4,5,6,7,8,9,10,11,12,14,15,16,17]
 
 
def get_lose_num (list):
  for i in range(0,len(list)-1):
    if list[i] + 1 != list[i+1]:
      return list[i]+1
      
 
 
print(get_lose_num(list1))


    8.小明有一堆苹果,他每天吃掉这堆的一半加一个,等第六天,小明剩余1个苹果,问,这堆苹果共多少个?

i = 1
num = 1
while i < 6 :
    num = (num + 1) * 2
    i += 1
print(num)

控制台用户登录注册购买英雄案例

import sys
 
 
users_data = {}
 
 
def new_user_data():
  """
  用户注册
  user_id 用户注册的账号
  user_passwd 用户密码
  user_passwd_chacked 用户确认密码
  """
  print("请输入您的账号:")
  while True:
    user_id = str(input())
    if len(user_id) < 3:
      print("账号过短,请重新输入")
      continue
    # 有问题
    for keys in users_data.keys() :
      if user_id == keys: 
        print("账号已存在,请重新输入账号:")
        break
    else:
      break
  print("请输入您的密码:")
  while True:
    user_passwd = str(input())
    if len(user_passwd) < 3:
      print("密码过短,请重新输入:")
      continue
    else:
      print("请确认密码:")
      user_passwd_chacked = str(input())
      if user_passwd_chacked != user_passwd:
        print("两次密码不一致,请重新输入:")
        continue
      else:
        users_data[user_id] = user_passwd
        print("注册成功")
        break
  return users_data
 
 
def user_login():
  """
  用户登录
  user_id 用户账号
  user_passwd 用户密码
  """
  print("请输入你的账号:")
  while True:
    user_id = str(input())
    flog = False
    for key in users_data.keys():
      if user_id == key:
        flog = True
        break
    if flog :
      break
    else:
      print("账号不存在,请重新输入:")
  print("请输入您的密码:")
  while True:
    user_passwd = str(input())
    if user_passwd == users_data[user_id]:
      return ""
    else:
      print("密码输入有误,请重新输入:")
      continue
       
 
 
 
while True:
  
 
#英雄商城登录界面 
 
  print("\t英雄商城登录界面\n")
  print("~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~\n")
  print("\t1. 用户登录\n")
  print("\t2. 新用户注册\n")
  print("\t3. 退出系统\n")
  print("~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~\n")
  print("(温馨提示)请输入您的选项:")
 
  login_num = int(input())
 
  if login_num == 1 :
    user_login()
 
 
    while True:
 
    #英雄联盟商城首页
      print("\t英雄联盟商城首页\n")
      print("~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~\n")
      print("\t1. 进入英雄超市\n")
      print("\t2. 休闲小游戏\n")
      print("\t3. 退出登录\n")
      print("~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~\n")
      print("(温馨提示)请输入您的选项:")
 
      home_num = int(input())
      if home_num == 1:
        while True:
          print("\t英雄商城英雄列表\n")
          print("~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~\n")
          print("编号  姓名     昵称     价格  库存  描述\n")
          print("1     纳尔   迷失之牙  3500  100  丛林不会原谅盲目与无知\n")
          print("2     锐雯   放逐之刃  4000  100  她是残忍高效的战士\n")
          print("3     薇恩   暗夜猎手  3500  100  这个世界不想人们想象的那么美好\n")
          print("4     扎克   生化魔人  3000  100  即使你没有脊柱,你也必须站起来\n")
          print("5     杰斯  未来守护者 2500  100  武装着睿智与魅力,你的选择没有错\n")
          print("~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~\n")
          print("(温馨提示)请输入您要购买的英雄编号:")
          
          buy_num = int(input())
 
          if buy_num ==1 :
 
            #英雄商城购买英雄
        
            print("\t英雄商城购买英雄\n")
            print("英雄购买票据")
            print("~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~\n\n")
            print("英雄名称:纳尔\n")
            print("英雄属性:生命值428(+85)/能量值200(+0)/移动速度425/攻击力55.8(+3.2)\n")
            print("攻击速度0.651(+3.1%)/护甲值24(+1.25)/攻击距离125\n\n")
            print("英雄座右铭:一人之行可灭世,众人之勤可救世!\n")
            print("英雄价格:3000\n")
            print("活动折扣:9.5\n\n")
            print("插播广告:当风云变色,当流离失所,世界不再是旧日模样")
            print("你是否会为了自己的梦想战斗,直至力战身亡,直至彼岸他乡")
            print("~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~\n")
            print("(温馨提示)请付款:")
 
          if buy_num == 2:
  
        #英雄商城购买英雄
        
            print("\t英雄商城购买英雄\n")
            print("英雄购买票据")
            print("~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~\n\n")
            print("英雄名称:锐雯(史诗)\n")
            print("英雄属性:生命值428(+85)/能量值200(+0)/移动速度425/攻击力55.8(+3.2)\n")
            print("攻击速度0.651(+3.1%)/护甲值24(+1.25)/攻击距离125\n\n")
            print("英雄座右铭:一人之行可灭世,众人之勤可救世!\n")
            print("英雄价格:3000\n")
            print("活动折扣:9.5\n\n")
            print("插播广告:当风云变色,当流离失所,世界不再是旧日模样")
            print("你是否会为了自己的梦想战斗,直至力战身亡,直至彼岸他乡")
            print("~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~\n")
            print("(温馨提示)请付款:")
 
          if buy_num == 3 :
 
        #英雄商城购买英雄
            print("\t英雄商城购买英雄\n")
            print("英雄购买票据")
            print("~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~\n\n")
            print("\t英雄名称: 薇恩(史诗)\n")
            print("\t英雄价格:10000\n")
            print("\t活动折扣:9.5\n\n")
            print("\t应付付款:9500\n")
            print("\t实际付款:10000\n")
            print("\t找零:500\n\n")
            print("插入广告:当风云变色,当流离失所,世界不再是旧日模样")
            print("你是否会为了自己的梦想战斗,直至力战身亡,直至彼岸他乡 ")
            print("~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~\n")
            print("(温馨提示)按任意键返回上一级菜单:")
 
          if buy_num == 4:
 
            #英雄商城购买英雄
            print("\t英雄商城购买英雄\n")
            print("英雄购买票据")
            print("~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~\n\n")
            print("\t英雄名称: 扎克 (史诗)\n")
            print("\t英雄价格:10000\n")
            print("\t活动折扣:9.5\n\n")
            print("\t应付付款:9500\n")
            print("\t实际付款:10000\n")
            print("\t找零:500\n\n")
            print("插入广告:当风云变色,当流离失所,世界不再是旧日模样")
            print("你是否会为了自己的梦想战斗,直至力战身亡,直至彼岸他乡 ")
            print("~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~\n")
            print("(温馨提示)按任意键返回上一级菜单:")
 
          if buy_num == 5:
                 #英雄商城购买英雄
            print("\t英雄商城购买英雄\n")
            print("英雄购买票据")
            print("~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~\n\n")
            print("\t英雄名称: 杰斯 (史诗)\n")
            print("\t英雄价格:10000\n")
            print("\t活动折扣:9.5\n\n")
            print("\t应付付款:9500\n")
            print("\t实际付款:10000\n")
            print("\t找零:500\n\n")
            print("插入广告:当风云变色,当流离失所,世界不再是旧日模样")
            print("你是否会为了自己的梦想战斗,直至力战身亡,直至彼岸他乡 ")
            print("~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~\n")
            print("(温馨提示)按任意键返回上一级菜单:")
 
      if home_num == 2:
        print("这里是休闲小游戏")
        #TODO
      if home_num == 3:
        break
 
 
  if login_num == 2:
    new_user_data()
  
 
  
 
  if login_num == 3:
    sys.exit(0)
  else:
 
    print("参数输入有误,请重新输入:")
    
 
 
 
 
 

你可能感兴趣的:(算法,数据结构)