2

私は大学生で、C# を使用してプログラムを書いていますが、このボタンを除いてほぼ完了しています。私はそのように学ぶことは決してないので答えは欲しくありませんが、ユーザーが3つの数字を入力してこれらの数字を三角形の辺として使用できるかどうかを判断する必要があるヘロンの方法を使用してプログラムを書いています。私が混乱している 1 つのボタンは、入力された数値が最大であることをプログラムに表示させる [最大値を見つける] ボタンです。教授は、ネストされた if/else ステートメントを使用してこのコードを記述したいと考えています。オンラインで検索しましたが、コースの本はひどいものです。誰かが役立つ可能性のあるWebサイトまたは例を教えてくれませんか? それは大歓迎です。

4

4 に答える 4

2

おそらく、2 レベルのネストされた Math.Max(v1, v2) リクエストを使用して記述できます。次に、それを必要な If/else 句に変換します。ILSpyをダウンロードして System.Math.Max を検査し、.Net が内部で何を使用しているかを調べれば、ボーナス ポイントを獲得できるかもしれません。

于 2012-09-24T20:10:12.593 に答える
0

大学時代のこのような問題を覚えています。一度に 2 つの数値を比較できるように、ソリューションを分割します。最初のペアから最大値を取得したら、それを 3 番目のペアと比較します。何かのようなもの:

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

必要があれば、プログラム全体を書くことができます。しかし、ここで最大 3 つの数値を取得するには、疑似コードを使用します。

`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 ステートメントを使用する必要がある場合は、temp 変数の使用を検討します。何かのようなもの:

var temp
var input1
var input2
var input3

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

これに似たもので十分です。例だけが求められたので、私は全体には入りませんでした.OPは具体的に答えを望まないと言いました.

于 2012-09-24T20:09:29.737 に答える