C# 如何生成一个大于一个bigint大小的连续数字列表?
这类似于使用一些嵌套for循环生成连续数字列表,将1添加到数字,然后显示数字。我遇到的问题是,如何生成一个介于10^26和10^27之间的连续数字列表,而不使用科学符号来显示数字。我正在考虑使用整数[26],但我不明白或不明白,一旦我达到10,如何将1添加到更高的索引中(比如我[25]),然后继续计数,直到达到10^27。如果你除了增加数字之外没有做任何计算,考虑将它表示为字符串,并以与手动算法相同的方式添加1:C# 如何生成一个大于一个bigint大小的连续数字列表?,c#,C#,这类似于使用一些嵌套for循环生成连续数字列表,将1添加到数字,然后显示数字。我遇到的问题是,如何生成一个介于10^26和10^27之间的连续数字列表,而不使用科学符号来显示数字。我正在考虑使用整数[26],但我不明白或不明白,一旦我达到10,如何将1添加到更高的索引中(比如我[25]),然后继续计数,直到达到10^27。如果你除了增加数字之外没有做任何计算,考虑将它表示为字符串,并以与手动算法相同的方式添加1: 将字符串初始化为您想要开始的任何数字 将1添加到最右边的(数字)字符 如果它是我
- 将字符串初始化为您想要开始的任何数字
- 将1添加到最右边的(数字)字符
- 如果它是我不确定你所说的大于一个Bigint是什么意思,你是指a还是a?如果您指的是BigInteger,那么对大小的唯一限制就是
异常,该异常在处理非常大的数字时可能会抛出OutOfMemory
请注意,BigInteger是不可变的,因此执行类似于
的操作将创建一个新对象,如果处于紧密循环中,可能会导致性能问题。有关更多信息,请参见主题的1^26和1^27都等于1。你是说2^26和2^27吗-你有必要写自己的大数字代码吗?你能用一个大数字库吗?如果你想把每个数字都表示成int,你会用myBigInt++
代替int[27]
吗?@Wyzard我是说1后面有260,oops:)。使用.NET4 System.Numerics.biginger:int[26]
最好将其表示为for(var I=biginger.Pow(10,26);I
,或者char[]
。StringBuilder