对于我的CS课程,我应该设计一个程序,说:
编写一个程序,询问用户他们想要输入多少个整数。您可以假设他们将输入一个数字> = 1.然后程序将提示用户输入那么多整数。输入所有数字后,程序应显示这些数字中最大和最小的数字(不,您不能使用数组,或我们尚未涵盖的任何其他材料)。运行程序时,它应符合以下格式:
How many integers would you like to enter?
4
Please enter 4 integers.
-4
105
2
-7
min: -7
max: 105
我不知道如何为自己的值分配不同数量的用户输入变量。 任务将于2018年1月21日到期。
任何帮助将不胜感激。
编辑:我不允许使用数组或条件运算符(?)
答案 0 :(得分:2)
为不同数量的用户输入变量分配自己的值
您不必这样做。您只需要两个变量:min
和max
。输入第一个数字时,将两个变量分配给该值。然后,在读取每个下一个数字(如果有的话)之后,将它与这两个值进行比较。如果该号码(让我们称之为current
)大于max
,请执行max = current
。如果小于min
,请执行min = current
。
处理完所有数字后,max
和min
将分别包含最大值和最小值。
类似的东西:
int n = 0;
int min, max;
// read number of variables from user and store it in n
for (int i = 0; i < n; ++i)
{
int current;
// read next number and store it in current
if (i == 0) // first number
{
min = max = current;
}
else
{
if (current > max) max = current;
if (current < min) min = current;
}
}
std::cout << "Max: " << max << ", min: " << min << std::endl;
该代码应该说明一般的想法。自己编写基本部分(阅读输入)以及所有部分。
小注意:因为您可以假设n
是>= 1
,您可以将第一个读取移到循环外部并将其更改为从i = 1
开始(循环不会在所有如果用户只输入一个值)。这也将允许您避免仅在第一次运行期间为真的if (i == 0)
条件。但由于这只是一个练习,我只是为了简单。