给定两个基数和 index ,pow()函数找到x升为y的幂的函数,即xy。本质上以C表示的 index 是使用pow()函数计算的。
例:
Input: 2.0, 5.0 Output: 32 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 Explanation: pow(5.0, 2.0) executes 5.0 raised to the power 2.0, which equals 25
用法:
double pow(double x, double y);
参数:该方法有两个参数:
- x:浮点基值
- y:浮点功率值
程序:
C
// C program to illustrate
// power function
#include <math.h>
#include <stdio.h>
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++
// CPP program to illustrate
// power function
#include <bits/stdc++.h>
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;
}
输出:
5882.79
Working of pow() function with integers
pow()函数以“ double”作为参数,并返回“ double”值。此函数并不总是适用于整数。 pow(5,2)就是这样一个例子。当分配给整数时,它在某些编译器上输出24,并且对于某些其他编译器也可以正常工作。但是pow(5,2)没有对整数进行任何分配将输出25。
- 这是因为52(即25)可能存储为24.9999999或25.0000000001,因为返回类型为double。分配给int时,25.0000000001变为25,但24.9999999将给出输出24。
- 为了克服这个问题并以整数格式输出准确的答案,我们可以在结果中加上0.5并将其类型转换为int,例如(int)(pow(5,2)+0.5)将给出正确的答案(在上面的示例中为25) ,与编译器无关。
C
// C program to illustrate
// working with integers in
// power function
#include <math.h>
#include <stdio.h>
int main()
{
int a;
// Using typecasting for
// integer result
a = (int)(pow(5, 2) + 0.5);
printf("%d", a);
return 0;
}
C++
// CPP program to illustrate
// working with integers in
// power function
#include <bits/stdc++.h>
using namespace std;
int main()
{
int a;
// Using typecasting for
// integer result
a = (int)(pow(5, 2) + 0.5);
cout << a;
return 0;
}
输出:
25
相关用法
- C++ fma()用法及代码示例
- C++ div()用法及代码示例
- C++ log()用法及代码示例
- C++ transform_inclusive_scan()用法及代码示例
- C++ Modulus用法及代码示例
- C++ wcsncat()用法及代码示例
- C++ wcsncmp()用法及代码示例
- C++ mbsrtowcs()用法及代码示例
- C++ mbsinit()用法及代码示例
- C++ bit_and用法及代码示例
注:本文由纯净天空筛选整理自 Power Function in C/C++。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。