三角形的判断问题

问题描述:给出三条边,判断是否能构成三角形,若可以,是否能构成特殊的三角形

涉及变量:kind:int型变量,用于存储三角形的类型

大致思路:

初始化时kind为0,之后根据不同的情况对kind赋予不同的值

初始化代码如下:

该方法用于判断三角形的类型

一切建立在可以构成三角形的基础上,即 两边之和大于第三边,若不满足该条件,直接返回kind,此时kind==0

若可以构成三角形,则kind==1

若满足三边中存在两边相等,则为等腰三角形,此时kind==2

若为等边三角形,则必定满足等腰三角形,此时kind自增加1后为3

若为直角三角形,存在两种情况,等腰直角或普通直角,

 此时可根据若为等腰直角,之前kind被赋值为2,则将kind赋值为5

 若为普通直角三角形,则kind==4

代码如下:

该方法用于根据不同的kind值来输出不同的结果,使用了switch-case语句

特别要注意的是每个case语句后要使用break语句结束循环,否则会产生一直执行到底的问题

 以上是我对三角形的判断的一点看法,希望对各位有所帮助

题外话:这个算法是自己想出来的,没有经过很多测试,如果发现有bug欢迎各位指出,博主会再改进的,谢谢

190126 Rewivy

猜你喜欢

转载自www.cnblogs.com/rewivy/p/10325132.html