使用C++和余弦定理计算三角形第三边
创作时间:
作者:
@小白创作中心
使用C++和余弦定理计算三角形第三边
引用
CSDN
1.
https://m.blog.csdn.net/hefeng_aspnet/article/details/144349757
给定两条边 A、B 和夹角 C,可以使用余弦定理来计算三角形的第三边。余弦定理的公式如下:
假设 a、b、c 是三角形的边,其中 c 是角 C 对面的边。则有:
c^2 = a^2 + b^2 - 2ab*cos(C)
或
c = sqrt(a^2 + b^2 - 2ab*cos(C))
接下来,我们通过一个C++程序来实现这个计算过程:
// CPP program to find third side of triangle using law of cosines
#include <bits/stdc++.h>
using namespace std;
// Function to calculate cos value of angle c
float cal_cos(float n)
{
float accuracy = 0.0001, x1, denominator, cosx, cosval;
// Converting degrees to radian
n = n * (3.142 / 180.0);
x1 = 1;
// Maps the sum along the series
cosx = x1;
// Holds the actual value of sin(n)
cosval = cos(n);
int i = 1;
do {
denominator = 2 * i * (2 * i - 1);
x1 = -x1 * n * n / denominator;
cosx = cosx + x1;
i = i + 1;
} while (accuracy <= fabs(cosval - cosx));
return cosx;
}
// Function to find third side
float third_side(int a, int b, float c)
{
float angle = cal_cos(c);
return sqrt((a * a) + (b * b) - 2 * a * b * angle);
}
// Driver program to check the above function
int main()
{
float c = 49;
int a = 5, b = 8;
// function call
cout << third_side(a, b, c);
return 0;
}
运行上述程序,输出结果为:
6.04339
时间复杂度:O(log(n)),因为使用内置 sqrt 函数
辅助空间:O(1),因为我们不使用任何额外空间。
热门推荐
沐浴乳和沐浴露的区别:成分、质地、功效全解析
「最佳睡眠时长」竟不是“8小时”!Nature子刊:睡眠7小时,心脏风险激增!
规律作息能提高免疫力 带来的这几个好处必须了解
暗影下的挣扎:艾滋病煤矿工人的生存困境
冰心的最短的现代诗
蔷薇与剑影:从《少女革命》看性别觉醒与青春
货币基金与国债逆回购哪个收益高,货币基金和国债逆回购的风险与收益如何平衡?
为防止同类相食,大自然设定了个障碍:“朊病毒”它究竟是啥?
天干顺序排列及其在命理学中的应用
JUMO热电偶安装注意事项及工作原理详解
突发!河北保定一鞋厂发生火灾,有人跳楼逃生!通报:无人员伤亡
收房时开发商应提供哪些必要手续?
福建车牌代码详解:从闽A到闽K的归属地
如何挑选优质的门窗产品?这类产品的选择有哪些标准?
家庭节能的基本技巧
论迹不论心?建筑究竟是理性还是感性?
为什么新能源产业链对能源转型至关重要?
手机拍玉兰花照片,就用这6个摄影技巧,照片必须漂亮
雅思作文写作时间要求:合理规划,高效表达
如何进行互联网产品定位/制定产品目标
车辆抵押贷款后,还能将车辆过户给他人吗?
包装生产线优势:提升生产效率、降低成本
中国U16主场对阵日本U16,能赢吗?
北京医保报销比例最新标准(城镇职工+城乡居民)
成分篇:油性皮肤如何选防晒霜
美国漫威漫画旗下超级英雄《哨兵》登场!
一袭汉服设计:官服补子,明清身份与等级的华丽标志
章子怡重返《卧虎藏龙》拍摄地,翡翠谷成网红打卡地
C语言中的与如何表示
肺纹理增多是什么原因