1,核心:数组的每一个元素保留四位数
代码:
#include <iostream>
using namespace std;
const int maxL=250;
struct big_num
{
int a[maxL];
public:
void init()
{
memset(a,0,sizeof(a));
}
big_num operator=(int obj)
{
init();
int n=0;
while(obj)
{
a[n++]=obj%10000;//1位放四位数
obj/=10000;
}
return *this;
}
big_num operator*(int obj)
{
big_num other;
other.init();
int add=0;//进位
int n;//最高位的下标
for(n=maxL-1;n>=0&&!a[n];n--);
int i;
for(i=0;i<=n;i++)
{
other.a[i]=(a[i]*obj+add)%10000;
add=(a[i]*obj+add)/10000;
}
other.a[i]=add;
return other;
}
big_num operator+(big_num obj)
{
big_num other;
other.init();
int add=0;//进位
for(int i=0;i<maxL;i++)
{
other.a[i]=(a[i]+obj.a[i]+add)%10000;
add=(a[i]+obj.a[i]+add)/10000;
}
return other;
}
void output()
{
int n;//最高位的下标
for(n=maxL-1;n>=0&&!a[n];n--);
if(n<0)
{
cout<<"0"<<endl;
return;
}
for(int i=n;i>=0;i--)
{
if(i==n) cout<<a[i];
//可能全0,所以需要一位一位处理
else
{
int temp=a[i];
int k=1000;
while(k)
{
cout<<temp/k;
temp%=k;
k/=10;
}
}
}
cout<<endl;
}
};
int main()
{
//freopen("5.2.in","r",stdin);
int ans=50003;
big_num bn;
bn=ans;
bn.output();
(bn*11).output();
big_num bn2;
bn2=12;
(bn+bn2).output();
return 0;
}
分享到:
相关推荐
一个处理大数加法、减法、除法、乘法的python程序,同时还有处理DH公钥算法的python程序
很有用的关于ACM程序设计大赛中的大数问题的全解析。。。
c语言难题+程序 大数相加减 要用字符数组处理
1 2/3维图像分割工具箱 2 PSORT粒子群优化工具箱 3 matlab计量工具箱Lesage ...88 大数计算工具箱 VariablePrecisionIntegers 89 晶体织构分析工具包 mtex-5.7.0 90 Minimal Paths 2工具箱 91 Matlab数学建模工具箱
自己编写的matlab归一化处理程序。 网上有很多相关程序,但是要么非常复杂,要么就是功能不符合自己的要求,所以就自己编写了一个。 资源是matlab的.m文件,可以实现对多维数组的每一列进行单独的归一化处理,归一化...
求两个大数的精确加减法,a=46328648326846835684657654876576657652364652442384, b=434979327487394737493749379473947,提示:不可以用java类,要用数组的方法来做,一位一位的加处理进位。
我这个程序用到了栈来处理数据存储,用到双端队列输出
C语言 初学 大数运算 文件操作 链表 大一时写的,大家不要笑话。 初学者可以拿来看看。。。大虾们就算了。。。
vc++编写的一个求大数阶乘的程序 闪点在于边界的处理上
字符串匹配算法:字符串匹配算法用于在一个字符串(文本)中查找一个子串(模式)的出现位置。常见的字符串匹配算法包括暴力匹配、KMP算法、Boyer-Moore算法等。 这些是计算机科学中常见的算法类型,每种算法都有...
身份证校验,升位程序及源码. 支持15、17位升级 可以计算出出生地,出生日期及性别 可以校验身份证号真伪
1 2/3维图像分割工具箱 2 PSORT粒子群优化工具箱 3 matlab计量工具箱Lesage ...88 大数计算工具箱 VariablePrecisionIntegers 89 晶体织构分析工具包 mtex-5.7.0 90 Minimal Paths 2工具箱 91 Matlab数学建模工具箱
Prefactor是一个命令行实用程序,用于查找大量的小因子。 它使用George Woltman的Gwnum库实现P-1,P + 1和EdECM分解的方法。 所有这些方法的主要思想是建立一个序列,并检查它是否变成周期性的。 如果周期是几个小...
1 2/3维图像分割工具箱 2 PSORT粒子群优化工具箱 3 matlab计量工具箱Lesage ...88 大数计算工具箱 VariablePrecisionIntegers 89 晶体织构分析工具包 mtex-5.7.0 90 Minimal Paths 2工具箱 91 Matlab数学建模工具箱
精益和平均滚动处理程序来确定可观察对象的哪一部分在视口中可见。 每个“懒加载”的关键部分。 viewportobserver.js是用 vanilla Javascript 编写的,没有依赖项。 介绍 有和周围obviosly的懒加载implemetations。...
1 2/3维图像分割工具箱 2 PSORT粒子群优化工具箱 3 matlab计量工具箱Lesage ...88 大数计算工具箱 VariablePrecisionIntegers 89 晶体织构分析工具包 mtex-5.7.0 90 Minimal Paths 2工具箱 91 Matlab数学建模工具箱
例如,定义一个函数, 用于求两个数中的大数,可写为: int max(a,b) int a,b; { if (a>b) return a; else return b; } 第一行说明max函数是一个整型函数,其返回的函数值是一个整数。形参为a,b。第二行说明a,b均...
其中一个按钮“% ”我没写处理程序,系统自带的都不好用,另外,对于精度的问题,没有解决,因为这需要大数算法。网上搜下就可以了。只是比较麻烦,我就不做了。最后如有问题,请告诉我继续改进。
换言之,如果你正在与一家供应商洽谈一个大数 据项目,那么你必须知道数据流处理对你的项目而言是否重要,并且供应商是否有能力 提供。 二、并行化 大数据的定义有许多种,以下这种相对有用。"小数据"的情形类似于...
本次毕业设计利用谷歌基于 tensorflow 的图片标题生成的开源程序,设计了一个基于 Python 程序的 web 网站,通过这个网站将如今已经拥有良好图片标题生成效果的图片标题 生成技术展现出来,让更多人了解使用到这个...