Libreria C ++ Valarray - funzione pow

Descrizione

Restituisce un valarray contenente i risultati dell'operazione di potenza su tutti gli elementi, nello stesso ordine. I risultati calcolati sono x elevati alla potenza y (xy).

Dichiarazione

Di seguito è riportata la dichiarazione per la funzione std :: pow.

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

C ++ 11

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

Parametri

  • x - Contiene elementi di un tipo per il quale è definita la funzione unaria abs.

  • y - È un elemento valarray con gli esponenti per le operazioni di potenza.

Valore di ritorno

Restituisce un valarray contenente i risultati dell'operazione di potenza su tutti gli elementi, nello stesso ordine. I risultati calcolati sono x elevati alla potenza y (xy).

Eccezioni

Basic guarantee - se qualsiasi operazione eseguita sugli elementi genera un'eccezione.

Gare di dati

Si accede a tutti gli elementi effettivamente copiati.

Esempio

Nell'esempio seguente viene illustrata la funzione 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;
}

Compiliamo ed eseguiamo il programma sopra, questo produrrà il seguente risultato:

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