程序设计基础实验破解(6)

一.前言

我上大一时接触到程序设计基础这门课,这门课有时会有实验,我便常常摸鱼,利用CSDN来做,

虽然有时搜不到,但每次搜到时我想:爽!!!

于是我也开始写,写下我们这个时期的答案与青春

二.实验与答案

1. 模拟用户登录过程,输入账号及密码,验证包括账号是否存在,账号密码是否匹配等情况。 账号不存在,输出提示信息“Wrong User”;账号密码不匹配,输出“Fail”;登录成功输出“Success”。

预设账号与密码对应如下:

"aaa" "123456"

"bbb" "888888"

"ccc" "333333"

【程序演示】

程序设计基础实验破解(6)_第1张图片

【程序提示】

先定义两个列表user_lst和pass_lst分别用以存放账户和密码,从键盘上输入账户和密码,当输入账户不在user中时,输出“Wrong User”,如果账户存在,则要考虑输入的密码是否与对应的账户匹配,如果匹配输出“Success”,否则输出“Fail”。两个列表定义如下:

user_lst = ["aaa", "bbb", "ccc"]           # 用户名列表

pass_lst = ["123456", "888888", "333333"]  # 密码列表,用户与对应密码的序号相同

在列表user_lst中计算元素“aaa“的索引的代码为:i=user_lst.index(“aaa”)

【程序代码】

user_lst = ["aaa", "bbb", "ccc"]           # 用户名列表

pass_lst = ["123456", "888888", "333333"]  # 密码列表,用户与对应密码的序号相同

user = input()                             # 输入用户名

password = input()                         # 输入密码

if user in user_lst:     # 若用户名在用户列表中存在时,判断输入的密码是否存在和序号是否与用户序号相同

       if password in pass_lst and pass_lst.index(password) == user_lst.index(user):

              print("Success")

       else:             # 若用户名在用户列表中不存在,或密码序号与用户序号不同

              print("Fail")

else:                # 若用户名在用户列表中不存在时输出"Wrong User"

       print("Wrong User")

2. 假设有字符串s=”语文:80,数学:82,英语:90,物理:85,化学:88,美术:80”,存放了某个学生各科的期末考试成绩。试编写程序,计算该学生所有科目的总分和平均分(保留一位小数)。

【提示】

  1. 可使用split()方法提取字符串s中每门课程的信息(包括课程名和分数)。关键看用什么符号分隔。
  2. 对提取的结果列表进行遍历,提取每门课程的分数,放在一个成绩列表中。
  3. 对成绩列表排序。排序后,找出最高成绩和最低成绩,然后再计算总分和平均分。

【程序演示】

程序设计基础实验破解(6)_第2张图片

【程序代码】

s="语文:80,数学:82,英语:90,物理:85,化学:88,美术:80"

lst_score=[] #存放成绩

ls=s.split(",") #分理出的列表

for x in ls:

    score=int(x[3:5]) #直接切片[3:5]出成绩

    lst_score.append(score)

lst_score.sort() #进行排序

print(f"最低成绩:{lst_score[0]}")

print(f"最高成绩:{lst_score[-1]}")

zf=sum(lst_score) #用sum函数求出总分

print("总  分:{}\n平均分:{:.1f}".format(zf,zf/len(lst_score)))

3、学校举办朗诵比赛,邀请了10位评委位每一名参赛选手的表现打分。假设列表lst_score=[9,10,8,9,10,7,6,8,7,8],存放了某一位参赛选手的所有评委评分。试编写程序,根据以下规则计算该参赛选手的最终得分;
(1)去掉一个最高分
(2)去掉一个最低分
(3)最终得分为剩下的8个分数的平均值

【提示】

  1. 使用sort()函数对列表进行升序或降序排列
  2. 使用pop()方法或del命令删除一个最高分
  3. 使用pop()方法或del命令删除一个最低分
  4. 使用内置的sum()函数计算列表剩余元素之和。
【程序代码】

lst_score=[9, 10, 8, 9, 10, 7, 6, 8, 7, 8]

lst_score.sort()

lst_score.pop()

lst_score.pop(0)

print("该选手的最终得分{}".format(sum(lst_score)/len(lst_score)))

你可能感兴趣的:(java,服务器,前端)