Python 算法设计(2) - 大数运算 - 基于字符串的数字运算和进位
admin
2024-01-20 03:41:31
0

如果数字太大,不能将字符串转换为整数类型的时候,怎么运算数字呢?

目录

    • 原题
    • 代码实现

原题

给定两个字符串形式的非负整数 num1num2 ,计算它们的和。

注意:

  • num1num2 的长度都小于 5100.

  • num1num2 都只包含数字 0-9. - num1num2 都不包含任何前导零。

  • 你不能使用任何内建 BigInteger 库, 也不能直接将输入的字符串转换为整数形式。

代码实现

程序从num1, num2的最后一位数开始,依次计算num1, num2同一数位的数字之,如果和大于10,则进位

要点:

  • add=s//10需要放在s=a1+a2+add之后,这样下一次计算才能获得前一次计算的进位。
  • 计算完最后一个num1, num2的数位后,如果有进位,计算结果还需要加上进位。
def solution(nums):num1,num2=numsif len(num1)0:result=str(add)+result # 计算结果加上最后一个进位return result

写完代码后,还需要进行测试。这里使用random模块,随机产生两个整数,进行计算。

from random import randint
for i in range(1000):num1,num2=str(randint(0,10000)),str(randint(0,10000))result=solution([num1,num2])if result != str(int(num1)+int(num2)):raise Exception("计算错误: %s %s %s"%(num1,num2,result))else:print("计算正确: %s %s %s"%(num1,num2,result))

部分运行结果:

计算正确: 3910 3129 7039
计算正确: 1018 4859 5877
计算正确: 3055 7940 10995
计算正确: 1018 1904 2922
计算正确: 4657 3795 8452
计算正确: 393 6770 7163
计算正确: 2512 2379 4891
计算正确: 5701 1903 7604

注:题目来自CSDN的“每日一练”习题功能。
有兴趣的读者,可以对程序进行相应的改编,如计算减法、乘法、除法等。

相关内容

热门资讯

日常等车时看到的行业细节 干了五年户外广告投放,养成了一个职业病:但凡路过公交候车亭,总会多看两眼——不是看广告好不好看,而是...
黄金回收行业标准制定有哪些核心... 贵金属回购市场的需求背景 近年来随着黄金投资和消费市场的发展,黄金回收相关需求持续攀升。不同群体的诉...
全球黑色星期二!AI交易“崩盘... 【导读】AI交易为何“崩盘”? 中国基金报记者 泰勒 大家,你们今天还好吗?! AI交易在全球范围内...
原创 6... 年初抢金条的人还在站岗,如今金店柜台前冷冷清清 黄金又跌了。 6月23日,伦敦现货黄金价格日内急跌逾...
狂融294亿美元!SK海力士冲... 韩国股市再度迎来重磅消息。 周三,韩国存储芯片龙头SK海力士宣布,计划在7月10日登陆纳斯达克,通过...
比特币跌破6万!AI吸走资金、... 比特币正在为机构化转型付出代价。散户买盘萎缩、ETF资金持续外流、企业持仓者潜在抛售压力上升,加之A...
原创 默... 欧洲近期试图复刻1985年广场协议的剧本,德国总理默茨呼吁欧盟27国联合行动,要求中国签订类似协议以...
怎么选 泛娱乐赛道直播公司孵化... 泛娱乐直播创业的行业发展背景 近年来泛娱乐直播赛道持续保持增长态势,据公开数据资料显示,2024年国...
原创 腰... 最近黄金市场凉得彻底。各大品牌足金饰品克价跌破1300元关口,北京菜百6月21日报价已经掉到1260...
ST中装:公司主要银行账户已全... 证券之星消息,ST中装(002822)06月24日在投资者关系平台上答复投资者关心的问题。 投资者提...
2026年开窗机行业趋势与战略... 一、开篇引言:市场格局重塑下的选择逻辑 步入2026年,全球建筑智能化与绿色节能政策的叠加驱动,使开...
资金全面转向科技,传统消费企业... 近期 A 股出现明显风格切换,老牌消费资金持续流出,机构与传统上市公司纷纷加码半导体、算力赛道。 先...
合肥保利翡翠天奕具体交房时间是... 对于众多购房者而言,“合肥保利翡翠天奕具体交房时间是什么时候?能按时交房吗?”是心中最关切的问题。根...
港股风向标|恒指连续杀跌后企稳... 财联社6月24日讯(编辑 冯轶)今日港股短线企稳,三大指数集体收涨。截至收盘,恒生指数涨0.33%,...
瑞众人寿达州中支被罚17万,涉... 蓝鲸新闻6月24日讯,近日,国家金融监督管理总局达州监管分局发布行政处罚决定书,剑指瑞众人寿保险有限...
美国最担心的事还是来了,中国加... 最近这段时间,国际金融圈子里有一笔账,算得各家央行心里都不太踏实。 截至2026年春季,美国国债总规...
马斯克,不是万亿富豪了 资产历史性超过万亿美元不到两周,特斯拉、SpaceX掌门人埃隆·马斯克的身价近日快速下跌。 据中新经...
突发!金价跌破4000美元,近... 每经记者:杜宇 记者|杜宇 编辑|何小桃 杜恒峰 校对|金冥羽 金银价格大跳水。 6月24日晚,现货...
粗粮吃越多越好?很多糖友吃错升... 控糖圈一直流传多吃粗粮稳血糖,不少糖友直接三餐全吃粗粮、顿顿杂粮,不仅胃胀消化不良,餐后血糖反而不降...
持续大跌!刚刚,黄金跌破400... 潮新闻客户端 记者 吴恩慧 6月24日,贵金属再次大跌。 截至发稿时,现货黄金大跌近3%,跌破400...