2

所以我在上大学,我正在使用 C# 编写一个程序,除了这个按钮之外几乎完成了。我不想要答案,因为我永远不会那样学习,但我正在使用 Heron 的方法编写一个程序,用户必须输入 3 个数字来确定这些数字是否可以用作三角形的边。我感到困惑的一个按钮是 Find the Maximum 按钮,它希望程序显示输入的数字是最高的。教授希望使用嵌套的 if/else 语句编写此代码。我在网上搜索过,这门课程的书很糟糕。有人可以帮助我提供一个可能的网站来提供帮助或者一个例子吗?那将不胜感激。

4

4 回答 4

2

也许您可以使用两级嵌套的 Math.Max(v1, v2) 请求来编写它。然后将其翻译成必要的 If/else 子句。如果您下载ILSpy并检查 System.Math.Max 以了解 .Net 在幕后使用了什么,也许您可​​以获得奖励积分。

于 2012-09-24T20:10:12.593 回答
0

我记得大学里的这些问题。分解解决方案,以便一次比较两个数字。一旦你从第一对中获得最大值,将其与第三对进行比较。就像是:

int a, b, c;

if (a > b)
{
    if (a > c)
        return a;
    else
        return c;
}
else
{
    /* similar for b/c pair */
}
于 2012-09-24T20:17:01.887 回答
0

如果您需要,我可以编写整个程序。但是要在这里获得最多三个数字是伪代码。

`var n1 = GetInputFromUser` >> General methods in C# console is Console.Readline() and in case of forms its good ole TextBoxes.
var n2 = GetInputFromUser
var n3 = GetInputFromUser

var result

if (n1 > n2)
        {
            result = n1;

            if (n1 > n3)
                result = n1;
            else
                result = n3;
        }
        else
        {
            result = n2;
            if(n2 > n3)
                result = n2;
            else
                result = n3;
        }

希望这可以帮助

于 2012-09-24T20:17:09.347 回答
-2

如果您必须使用嵌套的 if 语句,我会考虑使用临时变量。就像是:

var temp
var input1
var input2
var input3

if input1> input2 then
     temp = input1
else
    temp = input2

与此类似的东西就足够了。我没有深入研究整个事情,因为只要求了一个例子,并且 OP 明确表示他们不想要答案。

于 2012-09-24T20:09:29.737 回答