微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

c#中的数据类型用于查找阶乘

c#中最大的数据类型是什么,或者我应该使用哪种数据类型来查找1619的阶乘.我尝试了ulong和uint64,但是他们修改了我的答案.

解决方法

看这个 https://msdn.microsoft.com/en-us/library/system.numerics.biginteger%28v=vs.110%29.aspx

BigInteger是不是更快,但可以计算大数字

这里和MSDN的简单示例

string positiveString = "91389681247993671255432112000000";
string negativeString = "-90315837410896312071002088037140000";
BigInteger posBigInt = 0;
BigInteger negBigInt = 0;

    try 
    {
         posBigInt = BigInteger.Parse(positiveString);
         Console.WriteLine(posBigInt);
    }
    catch (FormatException)
    {
         Console.WriteLine("Unable to convert the string '{0}' to a BigInteger value.",positiveString);
    }

我尝试了自己的榜样并且正在努力

string positiveString = "91389681247993671255432112000000";
string negativeString = "-90315837410896312071002088037140000";
BigInteger b = BigInteger.Parse(positiveString);
BigInteger c = BigInteger.Parse(positiveString);
BigInteger d = b * c;

System.Console.WriteLine(d);
System.Console.ReadLine();

// result 835207383860988607360648144841987935757186784078054400000000000

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐