我想知道如何确定用户输入的数字中的最高数字和最低数字。我们应该在用户输入99后显示那些。我发现的一切都是使用数组,我们还没有学到这些。请帮忙!
string input;
int input2;
Console.WriteLine("Enter an integer");
input = Console.ReadLine();
input2 = Convert.ToInt32(input);
while (input2 != 99)
{
Console.WriteLine("Enter an integer");
input = Console.ReadLine();
input2 = Convert.ToInt32(input);
}
答案 0 :(得分:5)
命令式编程的想法是给出一系列语句(一种算法),它改变状态(一组变量),直到它包含所需的结果。
例如,您的程序会更改变量input
和input2
的内容,直到input2
包含值99
。
要查找最高和最低整数,请定义两个变量highest
和lowest
。在while
循环中更改其内容,以便在每次迭代后,它们分别包含最高和最低整数,并考虑当前输入值。
答案 1 :(得分:0)
如果要将整数存储在列表中,可以使用linq扩展方法.Min()返回最小整数,使用.Max()返回最高整数。
答案 2 :(得分:0)
您需要一些变量来记录最大值和最小值(您应该将这些值初始化为?)。在每个用户输入/循环迭代中,您应该将用户输入与这些变量的当前值进行比较,并在必要时更新它们(有几种方法可以做到这一点 - 有些方法比其他方式更冗长)。您需要决定(检查规格)如何处理99,例如计算为最小值还是最大值?
答案 3 :(得分:-3)
int min = int.Max;
int max = int.Min;
// ...
while (input2 != 99) {
// ...
min = Math.Min(min, input2);
max = Math.Max(max, input2);
}
// At this point, min and max contain the desired result.
此处有几个边缘情况,例如,如果用户立即输入99,或仅int.Max
min
(或int.Min
max
),但我会让你处理......