文档章节

大整数相加

 木宛城主
发布于 2015/03/02 19:38
字数 155
阅读 3
收藏 0
#include "stdafx.h"
#include <iostream>
#include <vector>
#include <string>
#include <algorithm>
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
    string sa,sb,sc;
    vector<int>v;
    int i,a,b,sum,flag;
    while(cin>>sa>>sb)
    {
        flag=0;//进位初始化为0
        v.clear();//清空结果向量
        sum=0;
        reverse(sa.begin(),sa.end());//逆序相加
        reverse(sb.begin(),sb.end());//逆序相加
        //cout<<sa<<endl;
        //cout<<sb<<endl;
        if(sa.size()<sb.size())
        {
           sc=sa;
           sa=sb;
           sb=sc;
        }
        for(i=0;i<sa.size();i++)
        {

            if(i>=sb.size())  sb[i]='0';      
          
        sum=sa[i]-'0'+sb[i]-'0'+flag;
        if(sum>9)
        {
            flag=sum/10;//产生进位
            sum=sum%10;//保留位
        }
        else
            flag=0;
 
        v.push_back(sum);
        }
        if(flag==1)  v.push_back(1);
        for(i=v.size()-1;i>=0;i--)//最后再逆序输出
        {
           cout<<v[i];
         
        }
        cout<<endl;
 
    }
    return 0;
}

© 著作权归作者所有

共有 人打赏支持
粉丝 2
博文 222
码字总数 199010
作品 0
黄浦
linux c/c++ 面试题目整理(三)

21、写一段代码判断机器的字节序。 字节序有两种方法: 大端法:高位字节存放在内存低地址端,低位字节存放在内存的高地址端; 小端法:低位字节存放在内存低地址端,高位字节存放在内存的高...

晟夏的叶
2017/04/21
0
0
素数整除性问题

前几天遇到这么一道题,挺有趣的,分享给大家: 题目: 截图 题目的意思是:对于3的整除性,任何一个整数,如果各个位数相加能被3整除,那么这个数就能被3整除;对于11的整除性,任何一个整数...

郝以平
2017/12/11
0
0
二进制,十进制,八进制,十六进制

一、 进制的概念在计算机语言中常用的进制有二进制、八进制、十进制和十六进制,十进制是最主要的表达形式。 对于进制,有两个基本的概念:基数和运算规则。基数:基数是指一种进制中组成的基...

西鼠
2017/12/11
0
0
Swift语言指南(五)--数字字面量和数字类型转换

数字字面量 整数字面量写法如下: · 十进制数,无前缀 · 二进制数,以 0b 为前缀 · 八进制数,以 0o 为前缀 · 十六进制数,以 0x 为前缀 下面所有整数字面量值为十进制的 17 : 1 let de...

joe.huang
2014/06/08
0
0
LeetCode:Sum of Two Integers - 不使用加减法运算符的整数加法

1、题目名称 Sum of Two Integers(不使用加减法运算符的整数加法) 2、题目地址 https://leetcode.com/problems/sum-of-two-integers/ 3、题目内容 英文: Calculate the sum of two integ...

北风其凉
2016/07/19
448
0

没有更多内容

加载失败,请刷新页面

加载更多

八月新增开源项目:假装自己是图形界面的 Git 命令行工具

每月新增开源项目。顾名思义,每月更新一期。我们会从社区上个月新收录的开源项目中,挑选出有价值的、有用的、优秀的、或者好玩的开源项目来和大家分享。数量不多,但我们力求推荐的都是精品...

编辑部的故事
21分钟前
5
0
20180918 find命令与Linux文件扩展名

命令find 用来查找搜索文件。 搜索文件相关命令: which 从环境变量里的目录中去搜索 whereis(不常用) 从一个固定的库中搜索 locate(需要单独安装 yum install -y mlocate) 查询时会从/var/...

野雪球
23分钟前
1
0
GO 数组相关操作

package mainimport("fmt""math/rand""time")func main() {//数组的几种定义方式var arr1 [3]int = [3]int{1,2,3}var arr2 = [3]int{4,5,6}arr3 := [3]string{"h", "w", ......

汤汤圆圆
今天
1
0
JAVA 中interrupt、interrupted和isInterrupted的区别

首先,我们说明下三个方法的功能 interrupt() 向当前调用者线程发出中断信号 isinterrupted() 查看当前中断信号是true还是false interrupted() 是静态方法,查看返回当前中断信号并将中断信号...

我爱春天的毛毛雨
今天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部