Biblioteca C ++ Valarray - Função pow

Descrição

Ele retorna um valarray contendo os resultados da operação de alimentação em todos os elementos, na mesma ordem. Os resultados calculados são x elevados à potência y (xy).

Declaração

A seguir está a declaração para a função std :: pow.

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

C ++ 11

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

Parâmetros

  • x - Contém elementos de um tipo para o qual a função unária abs é definida.

  • y - É um elemento valarray com os expoentes para as operações de potência.

Valor de retorno

Ele retorna um valarray contendo os resultados da operação de alimentação em todos os elementos, na mesma ordem. Os resultados calculados são x elevados à potência y (xy).

Exceções

Basic guarantee - se alguma operação executada nos elementos lançar uma exceção.

Corridas de dados

Todos os elementos efetivamente copiados são acessados.

Exemplo

No exemplo a seguir, explica sobre a função 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;
}

Vamos compilar e executar o programa acima, isso produzirá o seguinte resultado -

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