0
namespace ProgrammingTesting
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Please enter the input");

            string input1 = Console.ReadLine();
            if (input1 == "4")
            {
                Console.WriteLine("You are a winnere");
                Console.ReadLine();
            }
            else if (input1.Length < 4)
            {
                Console.WriteLine("TOOOOO high");

            }
            else if (input1.Length > 4)
            {
                Console.WriteLine("TOOOO Low");
                                Console.ReadLine();
            }       
        }
    }
}

4 未満の数値を入力すると、プログラムが「低すぎる」と出力しないのはなぜですか。

4

2 に答える 2

5

入力の長さを比較している値を比較していません。入力を文字列から整数に変換する必要もあります。例えば:

if (int.Parse(input1) < 4) {
    ...
}
于 2013-02-23T12:30:48.080 に答える
1

input1 は文字列です。

input1.Length は文字列の長さです。

比較する前に文字列を数値に変換したい。

また、より小さい方向とより大きい方向にも注意する必要があります。

Console.WriteLine("Please enter the input");

string input1 = Console.ReadLine();
int number;
bool valid = int.TryParse(out number);

if (! valid)
{
    Console.WriteLine("Entered value is not a number");
}
else
{

    if (number == 4)
    {
        Console.WriteLine("You are a winnere");
    }
    else if (number > 4)
    {
        Console.WriteLine("TOOOOO high");
    }
    else if (number < 4)
    {
        Console.WriteLine("TOOOO Low");
    }
}

Console.ReadLine();
于 2013-02-23T12:36:38.200 に答える