算法大数整数相加
来源:互联网 发布:组态软件学哪个 编辑:程序博客网 时间:2024/05/22 10:42
大数整数加法
#include <iostream>
#include <iomanip>
#include <string.h>
#include <string>
#include <algorithm>
#include <stdio.h>
#include <malloc.h>
#include <stdlib.h>
#include <cmath>
using namespace std;
#define MAXN 1000
int a[MAXN],b[MAXN];
int main(int argc, const char * argv[])
{
string str1,str2;//保存输入
long int len1,len2;
long int i,j,k;
int up;
/*输入流程*/
while(cin>>str1>>str2) {
if(str1[0] == '0' && str2[0] == '0')
break;
/*初始化各量*/
len1 = str1.length();
len2 = str2.length();
memset(a, 0, sizeof(a));
memset(b, 0, sizeof(b));
/*注意,必须倒着保存数据*/
for (i = len1 - 1, k = 0; i != -1; -- i)
{
a[k] = str1[i] - '0';
k++;
}
for (j = len2 - 1, k = 0; j != -1; -- j)
{
b[k] = str2[j] - '0';
k++;
}
for (i = 0, up = 0; i < MAXN; ++ i)
{
a[i] = a[i] + b[i] + up;
up = a[i] / 10;
a[i] %= 10;
}
for (i = MAXN - 1; i != -1; -- i)
{
if (a[i])
{
break;
}
}
for (k = i; k != -1; --k)
{
cout<<a[k];
}
cout << endl;
}
return 0;
}
分析
用两个字符串型的数组倒着存数字,
- 算法大数整数相加
- 大数相加算法
- 大数相加 算法
- 大数相加算法
- 大数相加算法
- 大数相加算法
- 算法--大数相加问题
- 大数相加算法
- 大数相加算法
- 大整数相加算法
- 大数相加算法的实现
- C/C++“大数相加算法”
- java算法0~大数相加
- 大数整数相加(忽略负数)
- 两个大数(整数)相加模板
- 长整数每位相加 算法
- 大数相加与相乘算法实现
- 大数相加,相减,相乘算法(JAVA代码)
- 捉住那头牛
- CSS与HTML的各种用法
- Win7 64位下Theano安装经历
- YTKNetWork源码解析——针对SSL自产证书认证如何随心所欲的游走在IP和域名之间并开启想要的验证
- Web数据存储之localStorage和sessionStorage
- 算法大数整数相加
- MySQL简介--基础篇
- 数据结构之顺序表
- Python金融行业必备工具
- IDEA 使用maven创建web项目
- 第 3 章 视图(续)
- Gradle配置签名问题解决
- 虚拟机的封装
- 《大话数据结构》学习笔记--chapter 5