首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我应该如何使用mpfr::mpfr_fac_ui函数?

我应该如何使用mpfr::mpfr_fac_ui函数?
EN

Stack Overflow用户
提问于 2019-05-26 16:50:18
回答 1查看 90关注 0票数 0

我试着在互联网上找到一个如何使用mpfr::mpfr_fac_ui的例子,但我无法做到,所以我决定在这里问一下。

我有自己的迭代阶乘

代码语言:javascript
复制
boost::multiprecision::mpfr_float factorial(int start, int end)
{
    boost::multiprecision::mpfr_float fact = 1;

    for (; start <= end; ++start)
        fact *= start;

    return fact;
}

但我想尝试一下内置的factorial

我不知道我做错了什么,因为当我像这样测试它的时候

代码语言:javascript
复制
mpfr_t test;
mpfr_init2(test, 1000);

std::cout << mpfr_fac_ui(test, 5, MPFR_RNDN) << std::endl;
std::cout << factorial(1, 5) << std::endl;

mpfr_fac_ui不返回任何错误(返回0),test为0,而它应该是120。

是我做错了什么,还是我错过了什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-05-27 09:52:03

在C中,我得到了120,正如预期的那样:

代码语言:javascript
复制
#include <stdio.h>
#include <mpfr.h>

int main (void)
{
  mpfr_t test;
  mpfr_init2 (test, 1000);
  mpfr_fac_ui (test, 5, MPFR_RNDN);
  mpfr_printf ("%Rg\n", test);
  mpfr_clear (test);
  return 0;
}

在您的程序中,您没有显示如何打印test的值。您所要做的就是打印mpfr_fac_ui的返回值,即0。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56312033

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档