我目前处于家庭作业状态,问题是我需要创建一个程序,该程序将要求5个整数,并且我应该确定最高和最低值。到目前为止,我很困惑,我的初始代码是this。
#include<iostream>
using namespace std;
int main(){
int num1,num2,num3,num4,num5,min=0,max=0;
cout << " Enter 1st number : ";
cin >> num1;
cout << " Enter 2nd number : ";
cin >> num2;
cout << " Enter 3rd number : ";
cin >> num3;
cout << " Enter 4th number : ";
cin >> num4;
cout << " Enter 5th number : ";
cin >> num5;
do{
if(num1<num2 && num1<num3 && num1<num4 && num1<num5 ){
max = num1;}
if(num2<num1 && num2<num3 && num2<num4 && num2<num5 ){
max = num2;}
if(num3<num1 && num3<num2 && num3<num4 && num3<num5 ){
max = num3;}
if(num4<num1 && num4<num3 && num4<num2 && num4<num5 ){
max = num4;}
if(num5<num1 && num5<num3 && num5<num4 && num5<num2 ){
max = num2;}
}while(max>0);
cout << " The highest number is : " <<max;
return 0;
}
任何帮助将不胜感激。预先感谢!
答案 0 :(得分:1)
如果允许您使用std::max
和std::min
,则可以使用:
max = std::max({num1, num2, num3, num4, num5});
min = std::min({num1, num2, num3, num4, num5});
简化循环中的代码。
答案 1 :(得分:1)
您应该将数字存储到std::vector<int>
或std::array
中,然后使用std::minmax_element算法获得最大和最小的数字。
答案 2 :(得分:1)
这是我不使用数组的解决方案。 我建议您自己尝试一下。您只是复制代码就不会学。
#include <iostream>
int main() {
int i=0, num, min=INT_MAX, max=INT_MIN;
do {
std::cout << "Enter number: ";
std::cin >> num;
if (num < min) {
min = num;
}
if (num > max) {
max = num;
}
i++;
} while (i < 5);
std::cout << "The max number is: " << max << std::endl;
std::cout << "The min number is: " << min << std::endl;
return 0;
}
答案 3 :(得分:0)
如果您不需要记住,可以循环播放,例如5次,然后在询问下一个数字之前先进行比较。
通常这样(想法,请自己编写并学习):
(5次)
询问用户输入,另存为输入
如果最大数字为null,则等于input
否则,如果最大数较小,则将输入设置为等于最大数
继续循环时间。
答案 4 :(得分:0)
而不是每次都比较所有数字。只需将当前的最小值与按顺序的数字进行比较即可。
int data[5];
// read numbers into data.
int min = data[0]; // Guess that number 0 is the smallst number.
// Now check if the guess is correct and update if you are wrong.
for(int loop = 0; loop < 5; ++loop)
{
// check if data[loop] is smaller than your current guess.
// if it is smaller than update your guess.
// when you have checked all the values exit the loop.
}
std::cout << "Smallest: " << min << "\n";
答案 5 :(得分:0)
不需要使用循环来执行此操作,如果没有使用循环,则可以执行此操作,如果必须使用循环,则必须使用数组或其他数据结构