最終更新日時:
が更新

履歴 編集

数学

Boost Math Library

インデックス

円周率を取得する

円周率を取得するには、Boost Math Libraryのboost::math::constants::pi()関数を使用する。この関数を使用するには、<boost/math/constants/constants.hpp>ヘッダをインクルードする。

pi()関数のテンプレート引数として、浮動小数点数型を指定することができ、doubleだけでなく、floatlong double多倍長浮動小数点数型として円周率を取得することもできる。

#include <iostream>
#include <limits>
#include <boost/math/constants/constants.hpp>

int main ()
{
    double pi = boost::math::constants::pi<double>();

    std::cout.precision(std::numeric_limits<double>::max_digits10);
    std::cout << pi << std::endl;
}

出力:

3.1415926535897931

参考:

最大公約数を求める

最大公約数を求めるには、Boost Math Libraryのboost::math::gcd()関数を使用する。この関数を使用するには、<boost/math/common_factor_rt.hpp>ヘッダをインクルードする。

この関数には、2つの整数型の値を指定する。戻り値として、その整数型としての最大公約数が返される。

gcdは、「the greatest common divisor(最大公約数)」の略称である。

#include <iostream>
#include <boost/math/common_factor_rt.hpp>

int main()
{
    // 12と18の最大公約数を求める
    int result = boost::math::gcd(12, 18);

    std::cout << result << std::endl;
}

出力:

6

最小公倍数を求める

最小公倍数を求めるには、Boost Math Libraryのboost::math::lcm()関数を使用する。この関数を使用するには、<boost/math/common_factor_rt.hpp>ヘッダをインクルードする。

この関数には、2つの整数型の値を指定する。戻り値として、その整数型としての最小公倍数が返される。

lcmは、「least common multiple(最小公倍数)」の略称である。

#include <iostream>
#include <boost/math/common_factor_rt.hpp>

int main()
{
    // 2と3の最小公倍数を求める
    int result = boost::math::lcm(2, 3);

    std::cout << result << std::endl;
}

出力:

6