我有一个字符串形式的整数数组。
string [] TriangleSideLengths
在这个数组中,将有 3 个 int 值,它们代表三角形的边长。有没有一种方法可以将我的数组 TriangleSideLengths 中的所有 3 个值单独提取到三个 int 对象中,如 int intSideLengthOne、intSideLengthTwo 和 intSideLengthThree。
我希望能够测试这三个值是否真的形成了一个有效的三角形?
例如,输入长度 10、10、100000 不会使其成为有效的等腰三角形。
我希望能够使用存储在我的数组 TriangleSideLengths 中的三个值来执行此检查。
a + b > c
a + c > b
b + c > a
非常感谢任何帮助。 多谢!! :)
最佳答案
您可以使用 LINQ 来解析字符串中的数字,如下所示:
var threeSides = TriangleSideLengths.Select(int.Parse).ToArray();
这是一个demo on ideone .
要进行检查,请按升序对数字进行排序,然后检查前两个的总和是否严格大于第三个:
Array.Sort(threeSides);
if (threeSides[0]+threeSides[1] > threeSides[2]) {
...
}
请注意,数字不是定义三角形的充分条件:您还必须检查数字是否严格为正数。
关于c# - 将字符串 [] 转换为整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18348205/