gpt4 book ai didi

c# - 在没有 if 语句的情况下比较两个数字(大于、等于或小于)

转载 作者:太空宇宙 更新时间:2023-11-03 22:46:25 24 4
gpt4 key购买 nike

我的 C# 编程书上有一个任务,我需要编写一个:

"Program that reads two numbers from the keyboard and prints if the number 1 is bigger than, equal to or less than number 2.

我假设我不能使用 if 语句的原因是因为它们还没有被覆盖。这个任务是在本书教授 if 语句之前给出的。我一直在想办法解决这个问题,我需要使用吗?运算符(operator)..?如果它只询问它是小于还是大于、小于等于或等于或大于数字 2,那会很容易,但现在有 3 个不同的东西。

这本书已经讲过了吗?运算符,但不是 CompareTo。我不相信它让我猜测 if 语句的存在,因为其中的所有任务应该能够用已经教过的东西完全解决。不过,这本书基本上只是在该任务的下一页教授 if 语句。

这是我最远的了:P

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

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

最佳答案

The reason I assume I can't use if statements is because they have not yet been covered.

这是一个相当合理的假设。

在条件语句之前覆盖条件表达式是一个有趣的教学选择,但它是完全有效的。

do i need to use the ? operator?

是的。这是条件运算符,因此如果您要表达有条件运行的逻辑,请使用它。

It would be easy if it asked only if it's less than or greater than, less than or equal to or equal to or greater than number 2, but now there's 3 different things.

是的。这里的见解是条件运算符的形式是:

condition ? consequence : alternative

运算符产生一个,三个操作数也是。由于条件运算符产生一个值,并且接受一个值,因此您可以嵌套它们。例如:

condition ? 
(condition ? consequence : alternative) :
alternative

或者

condition ? 
consequence :
(condition ? consequence : alternative)

现在有三个个结果可以去的地方,而不是两个。

当然你可以拥有任意数量的:

condition ? 
(condition ? consequence : alternative) :
(condition ? consequence : alternative)

但像这样的嵌套条件语句通常被认为是糟糕的风格,因为它们很难阅读。

这是否让您深入了解如何解决问题?

This is the furthest i've got :P

int number1 = Convert.ToInt32(Console.ReadLine());
int number2 = Convert.ToInt32(Console.ReadLine());

对于一个完整的初学者来说,这是合理的代码,但你很快就会学会我希望它是非常糟糕的风格,因为它很容易崩溃。如果您的用户输入的不是数字,则您的程序将终止。

更好的方法是使用 TryParse,并在用户输入错误时再次询问他们。但是由于您可能还没有了解循环,所以您还不能编写该代码。

您的下一行代码应该是:

string message = some conditional logic;
Console.WriteLine(message);

你能填一下逻辑吗?

关于c# - 在没有 if 语句的情况下比较两个数字(大于、等于或小于),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49702181/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com