當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


C++ valarray pow用法及代碼示例


描述

它以相同的順序返回一個包含對所有元素進行冪運算的結果的 valarray。計算的結果是 x 的 y (xy) 次冪。

聲明

以下是 std::pow 函數的聲明。

template<class T> valarray<T> log10 (const valarray<T>& x);

C++11

template<class T> valarray<T> log10 (const valarray<T>& x);

參數

  • x- 它包含定義了一元函數 abs 的類型的元素。

  • y- 它是一個 valarray 元素,具有冪運算的 index 。

返回值

它以相同的順序返回一個包含對所有元素進行冪運算的結果的 valarray。計算的結果是 x 的 y (xy) 次冪。

異常

Basic guarantee- 如果對元素執行的任何操作引發異常。

數據競爭

訪問所有有效複製的元素。

示例

在下麵的例子中解釋了 std::pow 函數。

#include <iostream>
#include <cstddef>
#include <cmath>
#include <valarray>

int main () {
   std::valarray<double> val (10);
   std::valarray<double> results;

   for (int i=0; i<10; ++i) val[i]=i+1;
   std::cout << "val:";
   for (std::size_t i=0; i<val.size(); ++i) std::cout << ' ' << val[i];
   std::cout << '\n';

   results = std::pow (val,val);
   std::cout << "val^val:";
   for (std::size_t i=0; i<results.size(); ++i) std::cout << ' ' << results[i];
   std::cout << '\n';

   results = std::pow (val,2.0);
   std::cout << "val^2:";
   for (std::size_t i=0; i<results.size(); ++i) std::cout << ' ' << results[i];
   std::cout << '\n';

   results = std::pow (2.0,val);
   std::cout << "2^val:";
   for (std::size_t i=0; i<results.size(); ++i) std::cout << ' ' << results[i];
   std::cout << '\n';

   return 0;
}

讓我們編譯並運行上麵的程序,這將產生以下結果 -

val:1 2 3 4 5 6 7 8 9 10
val^val:1 4 27 256 3125 46656 823543 1.67772e+07 3.8742e+08 1e+10
val^2:1 4 9 16 25 36 49 64 81 100
2^val:2 4 8 16 32 64 128 256 512 1024

相關用法


注:本文由純淨天空篩選整理自 C++ Valarray Library - pow Function。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。