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)