注意:答案是按照特定的顺序给出的,但由于许多用户根据投票而不是给出的时间对答案进行排序,因此这里是答案的索引,它们是最有意义的顺序:
(注意:这是Stack Overflow的C++常见问题解答的一个条目.如果你想批评在这种形式下提供常见问题解答的想法,那么发布所有这些的元数据的发布将是这样做的地方.这个问题在C++聊天室中受到监控,其中FAQ的想法一开始就出现了,所以你的答案很可能被那些提出想法的人阅读.)
我试过用了
long long int
Run Code Online (Sandbox Code Playgroud)
但它不适用于像3141592653589793238462643383279502884197169399375这样的数字,我需要这个高达10 ^ 80.任何想法?让我知道.非常感谢.
我正在尝试用C++实现BigInteger类.但是,首先,我有一个基本问题,"基础数据"如何表示?例如,最愚蠢的方法是使用固定(或动态)char数组并在char中存储每个整数的整数.但是,好吧,这是一种非常愚蠢的方式,我在这里是为了你的建议.
例如,我有一个因子程序,需要保存可能超过50位数的巨大整数.C++中的绝对最大原始数据类型unsigned long long int的最大值18446744073709551615只有20位数.以下是C++限制的链接:http://www.cplusplus.com/reference/climits/
如何在某种变量中存储大于该数字的数字?
我现在制作了15个拼图解算器(用c ++编写),但不仅仅是15个拼图,我的程序还必须解决3x4拼图,8x8拼图等... - > X x Y拼图.我必须以某种方式保存有关访问状态的信息,我的第一个想法是制作树,例如:
拼图:
州1
1 2
3 0
州2
1 3
0 2
我留在树上:
root-> 1-> 2-> 3-> 0
\ _
\ - > 3-> 0-> 2
对于所有谜题,这也适用于拼图5x3,6x6等
这个想法有效,但是它浪费了大量内存,而且要添加节点,需要一些时间:/所以效率非常低.
下一个想法是在stl的std :: map <>中保持访问状态,但我不知道如何制作好的哈希函数 - 从拼图状态制作快捷方式(beacouse我不必存储拼图状态,我只需要信息已被访问.你有任何想法,关于std :: map的关键,或其他想法保持信息已被状态访问?
我有以下代码
int i, a, z;
i = 2343243443;
a = 5464354324324324;
z = i * a;
cout << z << endl;
Run Code Online (Sandbox Code Playgroud)
当它们相乘时,它给出了-1431223188,这不是答案.我怎样才能让它给我正确的答案?
在汇编语言中,通常有一条指令可以添加两个操作数和一个进位.如果要实现大整数加法,只需添加最小的整数而不带进位,将下一个整数与进位相加.如何在C或C++中有效地执行此操作,而我无法访问进位标志?它应该适用于几个编译器和体系结构,所以我不能简单地使用内联汇编等.
我想知道是否有一个类可以提供与内存一样多的准确性.使用重载运算符来对其进行算术运算,就像它是正常数字一样.
例如:
BigNumber num;
num = 8;
for(int i = 0; i < 5000000; ++i)
{
num *= num;
}
Run Code Online (Sandbox Code Playgroud)
谢谢
我有两个字符串,都只包含数字.这些数字大于最大值uint64_t.
我怎样才能添加这两个数字,然后将结果转换为字符串?
如果一个大整数(我的意思是20位......)是素数,我需要解决.
我正在尝试使用蛮力方法,但(当然)我需要使用双打来包含原始数字.但是,模运算符(%)是一个整数运算符 - 因此对我来说没用!
我使用recursion.But为show fibonacci系列编写此代码.对于n> 43,它没有正确显示(例如:对于n = 100显示:-980107325).
#include<stdio.h>
#include<conio.h>
void fibonacciSeries(int);
void fibonacciSeries(int n)
{
static long d = 0, e = 1;
long c;
if (n>1)
{
c = d + e;
d = e;
e = c;
printf("%d \n", c);
fibonacciSeries(n - 1);
}
}
int main()
{
long a, n;
long long i = 0, j = 1, f;
printf("How many number you want to print in the fibonnaci series :\n");
scanf("%d", &n);
printf("\nFibonacci Series: ");
printf("%d", 0);
fibonacciSeries(n); …Run Code Online (Sandbox Code Playgroud) 是否可以采用大于C/C++提供的范围输入?是否可以接受大于无符号长整数的输入范围,甚至更大的范围为10 ^ 1000?如果可以用C/C++,请回答如何完成,谢谢.