判断三角形是否为钝角三角形
2019独角兽企业重金招聘Python工程师标准>>>
package mainimport ("fmt""math"
)type point struct {X float64Y float64
}// s = sqrt(p*(p-a)*(p-b)*(p-c)) (海伦公式),其中 p = (a+b+c)/2//距离
func distance(a, b point) float64 {return math.Sqrt((a.X-b.X)*(a.X-b.X) + (a.Y-b.Y)*(a.Y-b.Y))
}//面积
func area(a, b, c point) float64 {ab := distance(a, b)ac := distance(a, c)bc := distance(c, b)p := (ab + ac + bc) / 2return math.Sqrt(p * (p - ab) * (p - ac) * (p - bc))
}//重心
func point_middle(a, b, c point) point {return point{X: (a.X + b.X + c.X) / 3, Y: (a.Y + b.Y + c.Y) / 3}
}//判断是否为钝角三角形
//钝角三角形特点是重心坐标在三角形外 与其它任何顶点组成的图形的面积>三角形面积func is_obtuse(a, b, c point) bool {area1 := area(a, b, c)mPoint := point_middle(a, b, c)s1 := area(mPoint, a, b)s2 := area(mPoint, a, c)s3 := area(mPoint, b, c)if (s1 + s2 + s3) > area1 {return true} else {return false}
}func main() {a := point{0, 0}b := point{-1, 1}c := point{3, 0} //明显的钝角三角形坐标fmt.Printf("is_obtuse %v \n", is_obtuse(a, b, c))}
转载于:https://my.oschina.net/yang1992/blog/595457
判断三角形是否为钝角三角形相关推荐
- C语言OJ项目参考(2963) 判断三角形
2963: 判断三角形 Description 娄月的妹妹刘月是个初中生,某天回来兴高采烈的回家告诉姐姐他学会了如何凭借三角形三边判断三角形的形状(设两条短边为啊a,b;长边为c,判断a*a+b*b和 ...
- 用java判断三角形类型_判断三角形类型
假期无聊,继续九度OJ刷题,每天几道题,强制编程人啊! 三角形判断的方法: 直角三角形:勾股定理 锐角和钝角三角形:余玄定理 题目描述:给定三角形的三条边,a,b,c.判断该三角形类型. 输入:测试数 ...
- 1164 -- 判断三角形类型
判断三角形类型 Time Limit:1000MS Memory Limit:65536K Total Submit:189 Accepted:68 Description 给定三角形的三条边,a, ...
- 第11周 oj 判断三角形
问题及代码: /*Copyright(c)2016,烟台大学计算机学院 all rights reserved. 作者:曹欣宇 完成日期:2016年11月11日题目描述娄月的妹妹刘月是个初中生,某天回 ...
- c++学习之根据任意三个坐标的判断三角形的类型(面积、周长)
本次介绍一下,根据输入的任意三个点坐标,判断是否可以构成三角形,以及计算周长,面积. 文章目录 一.设计的构想 1.1.思路介绍 1.2.流程图 二.代码的实现 2.1.函数的介绍 2.2.完整的代码 ...
- 第十一周OJ(2)判断三角形
*\ 烟台大学计算机与控制工程学院 作者:汪莹莉 完成日期:2016年11月14日 问题描述: 娄月的妹妹刘月是个初中生,某天回来兴高采烈的回家告诉姐姐他学 会了如何凭借三角形三边判断三角形的形状(设 ...
- C语言判断三角形类型并给出周长
注意:在2019版Visual studio里面scanf需要改为scanf_s才可以运行,这与传统的C语言有些出入 ,博主最近下载了Visual studio2019版后才注意到这个问题,看来是我落 ...
- 根据三条边判断三角形类型
题目描述: 输入三个边长a,b,c,判断能否构成三角形,三角形是什么类型. 解题思路: (1)输入三边长a,b,c: (2)三边长排序,从小到大a>b>c: (3)若a+b>c则能构 ...
- NYOJ 659 判断三角形
判断三角形 时间限制:1000 ms | 内存限制:65535 KB 难度:2 描述 小明非常喜欢研究三角形.现在,小明已经知道三角形的三条边,如果三条边能组成三角形,小明就会很高兴,他就会得到一 ...
最新文章
- 十六、python开发之进程与线程
- 中国芯片研究再获国际顶会最佳论文提名!清华魏少军、刘雷波团队出品
- 如何让带有批注等修改痕迹的word文档编程“正规”文档?
- 成功解决sklearn\grid_search.py:42: DeprecationWarning: This module was deprecated in version 0.18 in fav
- java并发编程之线程的生命周期详解
- 扫雷游戏网页版_借“买量”造爆款,梦幻西游网页版击穿H5游戏天花板
- Sublime好看字体
- 使用Selenium模拟登陆百度盘
- 易企秀手机html5场景源码,仿易企秀V15.1手机网页DIY制作工具完整版开源版源码修复采......
- Java中,如何把ascii码转换成字符?
- oracle8i误删除临时表空间后的恢复
- 对首次认定为虹口区四新示范企业给予20万元奖励
- 如何优雅的将Mybatis日志中的Preparing与Parameters转换为可执行SQL
- DNA非编码区,外显子,内含子突变区别
- RK3588虚拟摄像头方案?
- 终于等到你!国内首条支持自动驾驶技术运用的“智慧高速”——杭甬高速复线宁波杭州湾新区段已进入实质性建设阶段!
- 【概率统计】统计函数
- 【Excel】排名之成绩并列排名(sumproduct、countif 函数的组合使用方法)
- ZIP加密文件破解:john简介
- 如何加密文件以及文件夹
热门文章
- 【心得】致敬CSDN,感谢有你
- MFC Windows 程序设计[二十五]之五彩十六宫格(附源码)
- NFT 2.0:创新潜力与投资指南
- 2013年11月1日
- 2019年热销微型笔记本计算机排名,2019年笔记本销量排行_2019年Q1全球笔记本电脑出货排名出炉...
- linux find 命令的使用/find 删除文件
- 哪条公链能承载Web 3.0应用爆发?
- 【程序设计】Java聊天机器人的设计与实现
- performance monitor for mysql_借助zabbix和mysqlperformancemonitor模板实现mysql数据库的监控...
- 微信小程序开发入门(连载)—— 认识微信小程序