给定两个正整数A和B ,代表等式椭圆的半长轴和半短轴的长度 ,任务是找到给定椭圆的偏心率。
例子:
Input: A = 12, B = 9
Output: 0.66
Input: A = 6, B = 3
Output: 0.87
方法:可以根据以下公式来解决给定问题,以计算椭圆的偏心度,该椭圆度由下式给出:
where,
A = Length of semi major axis
B = Length of semi minor axis
因此,打印如椭圆的偏心率。
下面是上述方法的实现:
C++
// C++ program for the above approach
#include
using namespace std;
// Function to find the
// eccentricity of ellipse
void findEccentricity(double A,
double B)
{
// Store the squares of length of
// semi-major and semi-minor axis
double semiMajor = A * A;
double semiMinor = B * B;
// Calculate the eccentricity
double ans = sqrt(1 - semiMinor / semiMajor);
// Print the result
cout << fixed << setprecision(2)
<< ans;
}
// Driver Code
int main()
{
double A = 12, B = 9;
findEccentricity(A, B);
return 0;
}
Python3
# Python3 program for the above approach
import math
# Function to find the
# eccentricity of ellipse
def findEccentricity(A, B):
# Store the squares of length of
# semi-major and semi-minor axis
semiMajor = A * A
semiMinor = B * B
# Calculate the eccentricity
ans = math.sqrt(1 - semiMinor / semiMajor)
# Print the result
print('%.2f' % ans)
# Driver Code
if __name__ == "__main__":
A = 12
B = 9
findEccentricity(A, B)
# This code is contributed by ukasp
输出:
0.66
时间复杂度: O(1)
辅助空间: O(1)