python 计算A+B

python:把英文字母转换为数字相加

话不多说,看题:

题目描述:
读入两个小于100的正整数A和B,计算A+B.
需要注意的是:A和B的每一位数字由对应的英文单词给出.

输入:

测试输入包含若干测试用例,每个测试用例占一行,格式为"A + B =",相邻两字符串有一个空格间隔.当A和B同时为0时输入结束,相应的结果不要输出.

输出:
对每个测试用例输出1行,即A+B的值.
样例输入

one + two =
three four + five six =
zero seven + eight nine =
zero + zero =

样例输出

3
90
96

参考代码:

#encoding:utf-8
"""
题目描述:
    读入两个小于100的正整数A和B,计算A+B.
    需要注意的是:A和B的每一位数字由对应的英文单词给出.
输入:
    测试输入包含若干测试用例,每个测试用例占一行,格式为"A + B =",相邻两字符串有一个空格间隔.当A和B同时为0时输入结束,相应的结果不要输出.
输出:
    对每个测试用例输出1行,即A+B的值.
样例输入:
    one + two =
    three four + five six =
    zero seven + eight nine =
    zero + zero =

"""
def changeTonum(str):
    numdata = []
    datas = ['zero','one','two','three','four','five','six','seven','eight','nine','ten']
    numdatas = str.split(" + ")
    numdata.append(numdatas[0].split(" "))
    numdata.append(numdatas[1].split(" "))
    #print(numdata)
    #注意这里,把所有单数输入情况转换为双数即[['one'],['two']]转化为[['zero','one'],['zero','two']]
    if len(numdata[0]) == 1:
        numdata[0].insert(0,'zero')
    if len(numdata[1]) == 1:
        numdata[1].insert(0,'zero')
    sum =(datas.index(numdata[0][0]) * 10)+datas.index(numdata[0][1])+\
        (datas.index(numdata[1][0]) * 10)+datas.index(numdata[1][1])
    return sum

data = []
results = []        #存放第一行到倒数第二行输入的计算结果
while True:
    temp = input().strip(' =')
    data.append(temp)
    if temp == 'zero + zero':       #输入结束标志
        break

for i in range(len(data)-1):        #最后一个zero+zero元素不考虑
    result = changeTonum(data[i])
    results.append(result)

for i in results:
    print(i)

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 好的,这个问题属于编程问题,我可以帮你计算a和b的值。以下是Python代码: ```python n = int(input()) for i in range(n): a, b = map(int, input().split()) print(a + b) ``` 你可以将输入数据复制粘贴到Python交互环境中,运行以上代码进行计算。 ### 回答2: 现在我们有一些数据需要用Python来进行计算。首先,我们需要输入一个正整数n,它表示接下来有n行数据。每一行的数据包含两个整数a和b,它们之间以一个空格进行间隔。 为了处理这些数据,我们可以使用循环来遍历n行数据。首先,我们从输入中获取n的值,并将其存储在一个变量中。然后,我们使用一个循环来遍历n次,每次在循环中获取一行数据,并将其拆分成a和b两个整数。 接下来,我们可以进行数据的计算。在这个问题中,我们需要计算a和b的一些结果。例如,我们可以将a和b相加、相减、相乘或者相除。假设我们想要计算a和b的和,我们可以使用加法运算符(+)来实现,然后将结果打印出来。 最后,我们重复以上步骤,直到遍历完所有n行数据,并计算出需要的结果。 总结起来,我们可以使用Python对给定的n行数据进行计算。通过输入n,我们可以使用循环来遍历n次,每次获取一行数据并进行计算。最后,我们将结果打印出来。这样就可以完成对a和b的计算了。 ### 回答3: 可以使用Python计算a和b的值。首先,我们输入一个正整数n,表示接下来有n行数据。然后,根据n的值,使用一个循环来处理每一行的数据。 在循环开始之前,我们需要先定义一个变量来存储a和b的结果。我们可以将其初始化为0。 接下来,在每一行数据的处理中,我们首先使用split函数将字符串按照空格分割成两部分,分别赋值给a和b。由于输入的a和b都是整数,我们可以使用int函数将其转换为整数类型。 然后,我们可以对a和b进行加法、减法、乘法、除法等运算。根据题目的具体要求,我们选择适当的运算符进行计算。 最后,我们将结果存储到之前定义的变量中。如果需要输出结果,我们可以使用print函数将其打印出来。 完成所有行数据的处理后,我们就得到了最终的结果。 下面是一个示例代码: ```python n = int(input("请输入正整数n:")) result = 0 for _ in range(n): a, b = input("请输入a和b的值,以空格间隔:").split() a = int(a) b = int(b) # 计算a和b的操作,这里以加法为例 result += (a + b) print("结果为:", result) ``` 这段代码可以计算出n行数据中a和b的和,并将结果打印出来。你可以根据具体的要求修改代码中的计算方式。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值