方法1: 数学定数を使用する方法
include
include
int main() { double eulerConstant = std::exp(1.0); std::cout << "オイラー定数: " << eulerConstant << std::endl; return 0; }
この方法では、
方法2: レーマンの公式を使用する方法
include
int main() { int n = 100000; // 級数の項数 double eulerConstant = 0.0;
for (int i = 0; i < n; i++) {
eulerConstant += 1.0 / factorial(i);
}
std::cout << "オイラー定数: " << eulerConstant << std::endl;
return 0;
}
int factorial(int n) { if (n == 0) return 1; else return n * factorial(n - 1); }
この方法では、レーマンの公式を使用してオイラー定数を計算します。レーマンの公式は、自然対数の底(ネイピア数)を無限級数で表現する方法です。上記のコードでは、階乗を計算するための再帰関数factorialを使用しています。
方法3: ベールベルデの公式を使用する方法
include
int main() { int n = 100000; // 級数の項数 double eulerConstant = 0.0;
for (int i = 0; i < n; i++) {
eulerConstant += pow(1.0 + 1.0 / n, n);
}
std::cout << "オイラー定数: " << eulerConstant << std::endl;
return 0;
}
この方法では、ベールベルデの公式を使用してオイラー定数を計算します。ベールベルデの公式は、自然対数の底(ネイピア数)を連分数で表現する方法です。上記のコードでは、pow関数を使用して指数計算を行っています。
これらの方法を使用することで、C++でオイラー定数(ネイピア数)を取得することができます。選択した方法は、目的や要件に応じて適切なものを選ぶことができます。