C# 获取用户输入并输出为布尔值

C# Getting user input and outputting to boolean

我目前正在参加 C# 训练营。我很难把它放在一起。作业是为一家保险公司创建一个控制台应用程序,它会问三个问题。

  1. 年龄,必须大于15岁,
  2. 任何超速罚单,必须是 3 或更少,并且
  3. DUI's,必须回答“false”。那么
  4. 合格?答案为真/假。

从技术上讲,我不应该在代码中使用“if”语句,因为我们还没有在 C# 课程中介绍“if”语句,所以它应该是检查所有 3 个用户输入以进行打印的基本等式出 true/false 个答案。我在最后将等式放在一起时遇到问题,检查所有三个并输出 true/false 答案。这是我第一次 post 在这里,所以,如果我没有提供正确的信息,我深表歉意。任何帮助将不胜感激。

namespace BooleanLogic
{
    class Program
    {
        static void Main(string[] args)
        {
            int age = 15, speed = 3;
            bool DUI = false;

            Console.WriteLine("Welcome to TTA Car Insurance. \nYou will be asked a few questions to determine if you qualify. \n");

            Console.WriteLine("What is your age?");
            age = Convert.ToInt32(Console.ReadLine());

            Console.WriteLine("Have you ever had a DUI? \nPlease enter true or false.");
            DUI = Convert.ToBoolean(Console.ReadLine());

            Console.WriteLine("How many speeding tickets do you have?");
            speed = Convert.ToInt32(Console.ReadLine());

            Console.WriteLine("Qualified?");
            

            Console.ReadLine();
        }
    }
}

您可以在布尔表达式中测试条件并将结果直接写入控制台。

Console.WriteLine(age > 15 && speed <= 3 && !DUI);

这将打印“true”或“false”。

通常人们认为布尔表达式必须出现在 if- 或 while- 语句等中。但是布尔表达式是类似于数字(算术)表达式的表达式,可以以相同的方式使用。他们 return 不是 return 一个数字,而是一个布尔值,但是这个值可以分配给变量,打印等

请注意,您不需要初始化变量,因为您永远不会使用这些值并在以后覆盖它们。您还可以声明首先赋值的变量:

int age = Convert.ToInt32(Console.ReadLine());

然而,为条件引入常量是有意义的

const int MinimumAge = 16;
const int MaximumSpeed = 3;
const bool RequiredDUI = false;

然后测试

bool result = age >= MinimumAge  && speed <= MaximumSpeed  && DUI == RequiredDUI;

这样可以更轻松地更改条件并使布尔表达式不言自明。