Biblioteca Valarray de C ++ - Función pow

Descripción

Devuelve un valarray que contiene los resultados de la operación de potencia en todos los elementos, en el mismo orden. Los resultados calculados se elevan x a la potencia y (xy).

Declaración

A continuación se muestra la declaración de la función 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 - Contiene elementos de un tipo para el que se define la función unaria abs.

  • y - Es un elemento valarray con los exponentes para las operaciones de potencia.

Valor devuelto

Devuelve un valarray que contiene los resultados de la operación de potencia en todos los elementos, en el mismo orden. Los resultados calculados se elevan x a la potencia y (xy).

Excepciones

Basic guarantee - si alguna operación realizada en los elementos arroja una excepción.

Carreras de datos

Se accede a todos los elementos efectivamente copiados.

Ejemplo

En el siguiente ejemplo se explica la función 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;
}

Compilemos y ejecutemos el programa anterior, esto producirá el siguiente 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