定律余弦求解c,但得到奇怪的答案
LawOfCosines solving for c, but getting odd answer
我一直在尝试编写一个可以使用余弦定律求解c的程序。程序运行正常,但我得到的答案大得离谱,以科学记数法的方式表示。 这是我的代码:
#include <iostream>
#include <cmath>
using namespace std;
class TrigMath
{
private:
double a;
double b;
double y;
public:
double LawOfCos()
{
return sqrt(pow(a,2) + pow(b,2) - 2*a*b*cos(y));
}
void seta(double A)
{
A = a;
}
void setb(double B)
{
B = b;
}
void sety(double Y)
{
Y = y;
}
};
int main()
{
TrigMath triangle1;
triangle1.seta(3);
triangle1.setb(4);
triangle1.sety(60);
cout << "c is equal to " << triangle1.LawOfCos() << endl;
return 0;
}
那里的 cos(( 函数将输入作为弧度而不是度数。
尝试将度数转换为弧度,然后将其作为输入提供。
在类函数 seta、setb 和 sety 中,你写了 A = a、B = b 和 Y = y。 您必须将它们更改为 a = A、b = B 和 Y = y。
因此,在应用所有更改后,代码应该像
#include <iostream>
#include <cmath>
using namespace std;
class TrigMath
{
private:
double a = 0;
double b = 0;
double y = 0;
public:
double LawOfCos()
{
return sqrt(pow(a,2) + pow(b,2) - 2*a*b*cos(y));
}
void seta(double A)
{
a = A;
}
void setb(double B)
{
b = B;
}
void sety(double Y)
{
y = Y*3.14/180;
}
};
int main()
{
TrigMath triangle1;
triangle1.seta(3.0);
triangle1.setb(4.0);
triangle1.sety(60.0);
cout << "c is equal to " << triangle1.LawOfCos() << endl;
return 0;
}
相关文章:
- 欧拉项目#8答案是大以获得有效答案
- 首要问题的答案让值班员搞错了
- If语句未被求值C++
- C++问题:用户认为数字1-100,程序提出问题不超过6次即可得到答案。无法正确
- 求出有多少个数字是完美平方,而sqrt()是L,R范围内的素数
- 给定两个偶数,求出它们之间所有偶数的平方和
- gcc和clang在表达式是否为常量求值的问题上存在分歧
- 求最长递增子序列C++的长度
- 求最大元素位置的分治算法
- 我试图制作一个程序,要求用户输入问题和答案,但程序循环不正确
- 使用 bfs 解决连接组件问题时得到错误的答案
- 线性丢番图方程 - 求给定区间内的解数和解
- 同一对象的"sizeof"的不同答案
- 将随机生成的数字添加到数组 + 对这些数组求平均值
- 递归求和任务的错误答案
- 我无法在Visual Studio代码中使用CIN输入答案,它说输入您的年龄,但它说只读文本编辑器如何解决这个问题?
- 为什么C++程序在太大时返回代码而不是答案?
- 定律余弦求解c,但得到奇怪的答案
- 在c++中求角的正弦和余弦值
- c++(函数,余弦)没有给出正确答案