大数加法 自定义函数
来源:互联网 发布:免费手机网络电话软件 编辑:程序博客网 时间:2024/06/14 06:12
jia(ans,a,b)相当于ans=a+b;
输入输出都用%s输入。
#include<cstdio> #include<cstring>#include<map>#define bit 1000using namespace std;int kase = 0;int jia(char ans[], char a1[], char b1[]){ int a[bit], b[bit], c[bit]; int lena, lenb, lenc, i, x; memset(a, 0, sizeof(a)); memset(b, 0, sizeof(b)); memset(c, 0, sizeof(c)); lena = strlen(a1); lenb = strlen(b1); for (i = 0; i <= lena - 1; i++) a[lena - i] = a1[i] - 48; for (i = 0; i <= lenb - 1; i++) b[lenb - i] = b1[i] - 48; lenc = 1; x = 0; while (lenc <= lena || lenc <= lenb) { c[lenc] = a[lenc] + b[lenc] + x; x = c[lenc] / 10; c[lenc] %= 10; lenc++; } c[lenc] = x; if (c[lenc] == 0) lenc--; int top = 0; for (i = lenc; i >= 1; i--) ans[top++] = c[i] + '0'; ans[top] = '\0'; return 0;}
string版,区别不大。
#include<cstdio> #include<cstring>#include<string>#include<map>#define bit 1000using namespace std;int kase = 0;int jia(string ans, string a1, string b1){ int a[bit], b[bit], c[bit]; int lena, lenb, lenc, i, x; memset(a, 0, sizeof(a)); memset(b, 0, sizeof(b)); memset(c, 0, sizeof(c)); lena = a1.length(); lenb = b1.length(); for (i = 0; i <= lena - 1; i++) a[lena - i] = a1[i] - 48; for (i = 0; i <= lenb - 1; i++) b[lenb - i] = b1[i] - 48; lenc = 1; x = 0; while (lenc <= lena || lenc <= lenb) { c[lenc] = a[lenc] + b[lenc] + x; x = c[lenc] / 10; c[lenc] %= 10; lenc++; } c[lenc] = x; if (c[lenc] == 0) lenc--; int top = 0; for (i = lenc; i >= 1; i--) ans[top++] = c[i] + '0'; ans[top] = '\0'; return 0;}
阅读全文
0 0
- 大数加法 自定义函数
- 大数加法和大数乘法模板函数
- 大数加法
- 大数加法
- 大数加法
- 大数加法
- 大数加法
- 大数加法
- 大数加法
- 大数加法
- 大数加法
- 大数加法
- 大数加法
- 大数加法
- 大数加法
- 大数加法
- 大数加法
- 大数加法
- 欢迎使用CSDN-markdown编辑器
- Android 自定义Dialog
- Java String
- 动态规划的背包问题 (共六题)
- TensorFlow 基本变量定义,基本操作,矩阵基本操作
- 大数加法 自定义函数
- vue.js使用总结
- python——asyncio模块实现协程、异步编程(二)
- java 泛型
- 最简单的 TensorFlow 代码,TensorFlow Hello World 。
- ORACLE物化视图
- 关于Java中值传递还是引用传递的问题解析-------引用校招笔试中的一道题进行解释
- [BZOJ1512][VijosP1006]晴天小猪历险记
- TabHost简单的代码实现