实验九 元组

实验九 元组

一、实验目的

1、培养分析问题并对进行建模的能力。
2、熟练运用元组解决实际问题。

二、实验内容

1、给定键盘上任意一个字母,编写程序输出它左边的字母和右边的字母。(若这个字符左边或右边没有字母输出 *),使用元组。

比如:输入:A 输出:* S

2、小明参加军训,教官让他们 8 个人一组,依次报数(从 1 开始),小明那组报数完毕后,最后一个人报的数为 9 人,你能帮教官找找,是第几个人报错了吗。

比如:输入:12345789 输出:6

3、使用元组编写程序求化学分子式的分子质量,分子式中只包含(H (1), C (12), N (14), O (16), F (19), P (31), S (32), K (39))。

比如:输入:H2SO4 输出:98

三、代码与结果

"""1、给定键盘上任意一个字母,编写程序输出它左边的字母和右边的字母。(若这个字符左边或右边没有字母输出 *),使用元组。

比如:输入:A 输出:* S"""

Alphabet=(('Q','W','E','R','T','Y','U','I','O','P'),('A','S','D','F','G','H','J','K','L'),('Z','X','C','V','B','N','M'))

a=input("请输入一个大写字母:")

for i in range(3):

if a in Alphabet[i]:

id = Alphabet[i].index(a)

if a==Alphabet[i][0]:

print('* {}'.format(Alphabet[i][id+1]))

break

elif a==Alphabet[i][len(Alphabet[i])-1]:

print('{} *'.format(Alphabet[i][id-1]))

break

else:

print('{} {}'.format(Alphabet[i][id-1],Alphabet[i][id+1]))

break

实验结果1

"""2、小明参加军训,教官让他们 8 个人一组,依次报数(从 1 开始),小明那组报数完毕后,最后一个人报的数为 9 人,你能帮教官找找,是第几个人报错了吗。

比如:输入:12345789 输出:6"""

a=(1,2,3,4,5,6,7,8)

b=tuple(input("请报数:"))

for i in range(len(a)):

if a[i]!=int(b[i]):

print(a[i])

break

实验结果2

"""3、使用元组编写程序求化学分子式的分子质量,分子式中只包含(H (1), C (12), N (14), O (16), F (19), P (31), S (32), K (39))。

比如:输入:H2SO4 输出:98"""

# N_M=(('H','C','N','O','F','P','S','K'),(1,12,14,16,19,31,32,39))

# name=tuple(input("请输入化合物:"))

# weghit = 0

# for i in range(0,len(name)):

# if name[i] in N_M[0]:

# # 字串的索引

# id = N_M[0].index(name[i])

# weghit += N_M[1][id]

# else:

# weghit += (int(name[i]) - 1) * N_M[1][id]

# print(weghit)

实验结果3

四、讨论与思考

1.程序流程图

主要涉及字符串索引函数:id = Alphabet[i].index(a)

2.程序流程图:

主要核心对于不同的否定判断函数:if a[i]!=int(b[i]):

  1. 程序流程图:

posted on 2023-08-02 18:46  一个编程的菜鸡  阅读(179)  评论(0)    收藏  举报