logo

Función de potencia en C/C++

Dados dos números base y exponente, el C++ o C función power() encuentra x elevado a la potencia de y, es decir Xy . Básicamente, en C/C++, el valor del exponente se calcula usando la función pow(). El función power() se utiliza para calcular la potencia de un número en C/C++. Toma el doble como entrada y devuelve el doble como salida.

tenemos que usar #incluir en C/C++ para usar esa función pow() en nuestro programa C/C++.



Sintaxis de la función pow()

double pow  (double x, double y);>

Parámetros de la función pow()

Este método toma sólo dos argumentos:

    x: valor base de coma flotante y: valor de potencia de coma flotante

Valor de retorno de la función pow()

  • La función de potencia devuelve el valor de punto flotante de x elevado a la potencia y ( Xy ).

Ejemplo de función pow()

 Input: 2.0, 5.0 Output: 32.00 Explanation:  pow(2.0, 5.0) executes 2.0 raised to the power 5.0, which equals 32 Input: 5.0, 2.0 Output: 25.00 Explanation:  pow(5.0, 2.0) executes 5.0 raised to the power 2.0, which equals 25>

C








// C program to illustrate> // power function> #include> #include> int> main()> {> >double> x = 6.1, y = 4.8;> >// Storing the answer in result.> >double> result =>pow>(x, y);> >printf>(>'%.2lf'>, result);> >return> 0;> }>

>

>

C++




// C++ program to illustrate> // power function> #include> using> namespace> std;> int> main()> {> >double> x = 6.1, y = 4.8;> >// Storing the answer in result.> >double> result =>pow>(x, y);> >// printing the result upto 2> >// decimal place> >cout << fixed << setprecision(2) << result << endl;> >return> 0;> }>

>

>

Producción

5882.79>

Complejidad del tiempo: O(log(n))

Espacio Auxiliar: O(1)

Funcionamiento de la función pow() con números enteros

La función pow() toma 'doble' como argumento y devuelve un valor 'doble'. Esta función no siempre funciona para números enteros. Un ejemplo de ello es pow(5, 2). Cuando se asigna a un número entero, genera 24 en algunos compiladores y funciona bien para otros compiladores. Pero pow(5, 2) sin ninguna asignación a un número entero genera 25.

Otra forma puede ser usar el redondo función para asignarlo a algún tipo de número entero.

  • Esto se debe a que 52(es decir, 25) podría almacenarse como 24,9999999 o 25,0000000001 porque el tipo de retorno es doble. Cuando se asigna a int, 25.0000000001 se convierte en 25, pero 24.9999999 dará como resultado 24.
  • Para superar esto y generar la respuesta precisa en formato de número entero, podemos agregar 1e-9 o 0.000000001 al resultado y encasillarlo en En t por ejemplo, (int)(pow(5, 2)+1e-9) dará la respuesta correcta (25, en el ejemplo anterior), independientemente del compilador.

Ejemplo 1: Programa C/C++ para demostrar el comportamiento de la función pow() con números enteros.

C++


CSS centrando una imagen



// C++ program to illustrate> // working with integers in> // power function> #include> using> namespace> std;> int> main()> {> >int> a, b;> >// Using typecasting for> >// integer result> >a = (>int>)(>pow>(5, 2) + 0.5);> >b = round(>pow>(5,2));> >cout << a << endl << b ;> >return> 0;> }>

>

>

C




// C program to illustrate> // working with integers in> // power function> #include> #include> int> main()> {> >int> a, b;> >// Using typecasting for> >// integer result> >a = (>int>)(>pow>(5, 2) + 1e-9);> >b = round(>pow>(5,2));> >printf>(>'%d %d'>, a, b);> >return> 0;> }>

>

>

Producción

25 25>

Complejidad del tiempo: O(log(n))
Espacio Auxiliar: O(1)