C++ Valarray::cosh 函数



C++ Valarray::cosh() 函数生成一个包含所有元素双曲余弦的 valarray,用于计算每个元素值的双曲余弦。cmath 中的 cosh() 方法被此函数重载,它会为每个元素调用一次该方法。

语法

以下是 C++ Valarray::cosh 函数的语法:

cosh (const valarray<T>& x);

参数

x − 包含元素的类型,对此类型定义了一元函数 cosh。

示例

示例 1

让我们来看下面的例子,我们将使用 cosh() 函数并检索输出。

#include <iostream>
#include <valarray>
using namespace std;

int main() {
   valarray<double>
   valarray0 = { 0.15, 0.3, 0.65, 0.89, 0.4 };
   valarray<double> valarray1;
   valarray1 = cosh(valarray0);
   cout << "The New cosh"
      << " Valarray is : "
      << endl;
   for (double& x : valarray1) {
      cout << x << " ";
   }
   cout << endl;
   return 0;
}

输出

让我们编译并运行上面的程序,这将产生以下结果:

The New cosh Valarray is : 
1.01127 1.04534 1.21879 1.42289 1.08107

示例 2

让我们考虑下面的例子,我们将使用 cosh() 函数并执行算术运算并检索输出。

#include <cmath>
#include <iomanip>
#include <iostream>
#include <valarray>

void show(const char* title, const std::valarray<float>& data) {
   const int w { 8 };
   std::cout << std::setw(w) << title << " | ";
   for (float a : data)
      std::cout << std::setw(w) << a << " | ";
   std::cout << '\n';
}
int main() {
   const std::valarray<float> a { .23, .25, .36, .45 };
   const auto sinh = std::sinh(a);
   const auto cosh = std::cosh(a);
   const auto Multiply = (cosh * sinh);
   show("sinh(a)", sinh);
   show("cosh(a)", cosh);
   show("Result(cosh * sinh)", Multiply   );
}

输出

让我们编译并运行上面的程序,这将产生以下结果:

sinh(a)             | 0.232033 | 0.252612 | 0.367827 | 0.465342 | 
cosh(a)             |  1.02657 |  1.03141 |   1.0655 |  1.10297 | 
Result(cosh * sinh) | 0.238198 | 0.260548 |  0.39192 | 0.513258 |  

示例 3

在下面的例子中,我们将使用 cos() 函数并检索原始 valarray 和 cos() valarray 的输出。

#include <iostream>
#include <valarray>
using namespace std;

int main() {
   valarray<double> myvalarr = { 0.2, -0.3, -0.4, 0.5, -0.1 };
   cout << "The Orignal Valarray is : ";
   
   for (double& ele : myvalarr)
      cout << ele << " ";
   valarray<double> coshvalarray = cosh(myvalarr);
   cout << "\nThe cosh Valarray is : ";
   
   for (double& ele : coshvalarray)
      cout << ele << " ";
   return 0;
}

输出

让我们编译并运行上面的程序,这将产生以下结果:

The Orignal Valarray is : 0.2 -0.3 -0.4 0.5 -0.1 
The cosh Valarray is : 1.02007 1.04534 1.08107 1.12763 1.005
广告