NTL 库:如何将大整数分配给 ZZ_p
NTL Library: How to assign a big integer to ZZ_p
在 NTL 库中,我知道我们可以将一个大整数值定义为:
ZZ p;
p=to_ZZ("1111111111111111111111111111111333333333333333");
ZZ_p::init(p);
ZZ_p b(12);
我的问题是:如果我想为 b 而不是 12 分配一个大整数怎么办?
例如
ZZ_p b("1111111111111111111111111111111333333333333334");
所以它应该取模 p
并将 1
分配给 b
。
我 fFindRoots(vec_ZZ_p& x, const ZZ_pX& ff)
需要它,因此能够将大整数作为(多项式的)系数插入向量
首先:我尝试了您发布的代码,ZZ_p b(12);
行对我不起作用。
我不得不使用
ZZ_p b;
b = 12;
如果你想分配一个大整数,你可以通过
ZZ_p b;
b = to_ZZ_p(conv<ZZ>("1111111111111111111111111111111333333333333334"));
或
char bigInteger[47] = "1111111111111111111111111111111333333333333334";
ZZ_p b;
b = to_ZZ_p(conv<ZZ>(bigInteger));
cout << b << endl;
现在将打印 1
.
在 NTL 库中,我知道我们可以将一个大整数值定义为:
ZZ p;
p=to_ZZ("1111111111111111111111111111111333333333333333");
ZZ_p::init(p);
ZZ_p b(12);
我的问题是:如果我想为 b 而不是 12 分配一个大整数怎么办?
例如
ZZ_p b("1111111111111111111111111111111333333333333334");
所以它应该取模 p
并将 1
分配给 b
。
我 fFindRoots(vec_ZZ_p& x, const ZZ_pX& ff)
需要它,因此能够将大整数作为(多项式的)系数插入向量
首先:我尝试了您发布的代码,ZZ_p b(12);
行对我不起作用。
我不得不使用
ZZ_p b;
b = 12;
如果你想分配一个大整数,你可以通过
ZZ_p b;
b = to_ZZ_p(conv<ZZ>("1111111111111111111111111111111333333333333334"));
或
char bigInteger[47] = "1111111111111111111111111111111333333333333334";
ZZ_p b;
b = to_ZZ_p(conv<ZZ>(bigInteger));
cout << b << endl;
现在将打印 1
.