本文整理汇总了C#中BigNumber.CompareTo方法的典型用法代码示例。如果您正苦于以下问题:C# BigNumber.CompareTo方法的具体用法?C# BigNumber.CompareTo怎么用?C# BigNumber.CompareTo使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类BigNumber
的用法示例。
在下文中一共展示了BigNumber.CompareTo方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Power
/// <summary>计算value^pow</summary>
static internal BigNumber Power(BigNumber value, BigNumber pow, int precision) {
if (pow.DecimalPart.Count != 0 && !value.IsPlus) //第一个条件是小数次幂,第二个条件是负数
throw new ExpressionException("只有正数才有小数次幂");
BigNumber result = new BigNumber("1");
for (BigNumber i = new BigNumber("1"); i.CompareTo(pow) != 1; i++) {
result = result * value;
}
BigNumber two = new BigNumber("2");
int n = 1;
BigNumber tt = new BigNumber(new List<int>(), pow.DecimalPart, true) * two;
while (true) {
// 如果整数部分为1,那么就得进行一次2^n开方运算
if (tt.IntPart.Count == 1 && tt.IntPart[0] == 1) {
tt.IntPart.Clear();
BigNumber r = Root(value, n, precision + 1);
if (r.GetPrecision(1) >= precision / BigNumber.OneCount + 2)
break;
result = result * r;
} else if (tt.IsZero())
break;
tt = tt * two;
n++;
}
result.KeepPrecision(precision);
return result;
}