如果输入小于总金额,则拒绝用户输入

本文关键字:输入 拒绝 用户 金额 小于 如果 | 更新日期: 2023-09-27 18:34:40

美好的一天,我检查了所有现有的代码以找到解决此问题的方法,但由于我是新手,因此没有指南就无法解决它。

在此代码上,它只接受整数,但我想阻止用户在输入小于计算的总量时接受输入

例如,用户输入为 5,总金额为 10,程序仍将接受,这是一个错误,

那么,如果金额结束<总金额然后再次循环,我将放在哪里>

bool test3 = false;
        do
        {
            try
            {
                Console.SetCursorPosition(67, 19);
                Console.Write(" ");
                Console.SetCursorPosition(67, 19);
                AmountTended = decimal.Parse(Console.ReadLine());
                test3 = false;
            }
            catch
            {
                test3 = true;
            }
        } while (test3);

如果输入小于总金额,则拒绝用户输入

你可以

试着把

if (AmountTended < TotalAmount)
{
    test3 = true;
}

在"try"代码块中,之后

test3 = false; 

无论用户输入的值如何,您都不会检查用户输入并将test3设置为false。因此,在用户输入有效值后,循环结束。

相反,您需要执行实际检查:

decimal value = 0.0m;
while(value < TotalAmount)
{
   value = decimal.Parse(Console.ReadLine());
}

只要用户输入的值小于TotalAmount,此循环就会继续。

注意:为了处理无效的输入,您可以尝试改用decimal.TryParse