gpt4 book ai didi

c# - 什么是更有效的三角形分类方法?

转载 作者:行者123 更新时间:2023-11-30 19:09:08 25 4
gpt4 key购买 nike

我被要求(在学校)编写一个函数,该函数为 void 并输出用户输入的三角形类型:

static void typeTri()
{
if (side1 == side2 && side2 == side3)
{
Console.WriteLine("The triangle is equilateral.");
}
else if ((side1 == side2 && side2 != side3) || (side1 != side2 && side2 == side3) || (side1 == side3 && side1 != side2))
{
Console.WriteLine("The triangle is isoceles.");
}
else
{
Console.WriteLine("The triangle is scalene.");
}
}

“else if”的测试似乎有点长。有什么想法吗?

最佳答案

感谢逻辑,您可以简化第二个 if:您不需要测试 !=,因为如果它们相等,第一个 if 已经满足了。

static void typeTri()
{
if (side1 == side2 && side2 == side3)
{
Console.WriteLine("The triangle is equilateral.");
}
else if ((side1 == side2) || (side2 == side3) || (side1 == side3))
{
Console.WriteLine("The triangle is isoceles.");
}
else if ((side1 >= side2 + side3) || (side2 >= side1 + side3) || (side3 >= side1 + side2) || (side1 <= 0) || (side2 <= 0) || (side3 <= 0))
{
Console.WriteLine("Not a Triangle");
}
else
{
Console.WriteLine("The triangle is scalene.");
}
}

您还需要考虑这根本不是三角形的情况,但该要求可能超出了这个特定问题的范围。

关于c# - 什么是更有效的三角形分类方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33112106/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com