2016-09-25 58 views
0

嗨那里我需要写算法,读取一个三角形的最大角度和从左边,右边,然后底部的三边。然后根据这些结果输出特定的角度/侧面三角形。三角形类型的基本算法

具体的三角形是急性斜角,右斜角,钝角斜角,急性等腰,右侧等腰,钝角等腰三角形和等边三角形。

我们必须编写一个伪代码的基本算法。我真的不知道从哪里开始,任何帮助将不胜感激。

+0

我建议通过绘制决策树开始 – samgak

回答

0

你只需要拿出了一系列的测试,以适用于三角形。想象一下,你正在设计一个工厂的布局,这些三角形正在通过一系列工人的传送带。每个工人都可以检查一些关于三角形的东西,然后根据其类型将其放入一个垃圾箱中,或者将其移动到另一个传送带上,以便通过更多的工人进行更多的测试。

例如,您可以通过检查所有边是否相等来轻松测试它是否等边,如果是,则可以输出并在那里停止。

如果不是,那么它必须是斜角或异体。

如果最大角度小于90度,则为锐角。如果它等于90度,那么它是一个直角三角形,如果它大于90度,那么它是钝的。

如果两边的长度相等,那么它就是等角点,否则就是斜角。

首先根据这些标准勾画出决策树或流程图。然后把它变成伪代码。

+0

谢谢,这是有道理的!我会放弃它 –

0

您应该能够使用正弦定律,然后通过案例分析来确定您给定的三角形是哪种类型的三角形。

+0

该算法只是应该读取最大的角度并阅读两侧,并从那里它将匹配它与相应的三角形。 –

0

从容易的开始。等边三角形有3个相等的边。

所以:

function isEquilateral(left, right, bottom) { 
     return left === right == bottom; 
    ); 
+0

该算法只是应该读取最大的角度并阅读两侧,并从那里将它与相应的三角形匹配。 –

+0

那么如果所有方面都相等,那么这个三角形就是等边的吗?角度也是60°,但这不是必需的。 –