我爱占星网 我爱占星网
首页
编程
java
php
前端
首页 编程 java php 前端

阶乘之后s的值溢出,如何解决


#include<iostream>
using namespace std;
int main() {
    long long k;
    cin >> k;
    

    unsigned long long int t=0;
    unsigned long long s = 1;
    while (s % k != 0) {

        t += 1;
        s *= t;//阶乘
        cout << endl <<"t=" << t << endl <<"s=" << s<<"s%k="<<s%k;

    }

    cout << t;
    return 0;
}

如果这个数很大,就不能用整数类型啦。

大数运算(7)——大数阶乘(求阶乘)_静之吾心的博客-CSDN博客_大数阶乘 对于大数来说,一个数的阶乘是非常大的,同样,一个int类型的整数,他的阶乘就有可能会很大。就拿50来说,他的阶乘位数是65位,就已经远远超过了long long int类型的最大值。这时候,我们要通过字符串的方法,来进行阶乘的运算。当然,需要注意的是:我们所求一个数的阶乘,这个数是在int范围内的,5000的阶乘位数是16326位。其方法是:首先,我们是可以先求一定范围内的最大 https://blog.csdn.net/lisp1995/article/details/52403507

近期文章

  • 各位看看问题出在哪里 一直看不明白
  • java实现 前端动态获取后台处理进度显示在进度条上
  • HTTPS网站提取内容、需要POST多线程、网站有加密、会的对接一下
  • Tasking编译代码,增加.a文件编译出错
  • 这题哪里写错了 救命 求指点
  • 程序设计之快递运费问题
  • 如何使用Java实现给绳子或线段画颜色的算法
  • 如何在C++中把分数形式的数赋给一个变量
  • Java ArrayList和LinkedList的时间复杂度的问题
  • 求推荐采集12MHZ方波信号的分频器
  • icom尺寸如何设置
  • C语言编程基础,求代码
  • mysql longblob中存储的数据
  • 请问有谁有数据结构与算法分析c语言描述的课后习题的中文版答案的吗?
  • Oracle数据库中的ROW_NUMBER() OVER(PARTITION BY ) 能否替换为不用这个函数
  • 安装sqlserver好多遍了,。。我累了
  • JS能实现后台统计新闻字数并输出到页面端吗?
  • 在该程序中有条件循环输入
  • 求N的阶乘,超大数怎么做
  • c++异常改怎么解决

Copyright ©2022 我爱占星 All Rights Reserved.

浙ICP备2022030071号-1

部分图文来自网络,如有侵犯您的版权,请告诉我们删除

友情链接:代码精华