我应该比较两个连续的整数,i和j,它们是由以空格分隔的整数列表给出的,以wh结尾,如果i小于j,我将j与max和i比较为min 。如果相反,我将j与min和i进行比较。输出应该是我对max,min,i和j的每次比较。此外,列表必须大于2个整数。如果它小于那么我应该输出0.但是程序似乎没有正确执行if语句。
ModelState.AddModelError
}
答案 0 :(得分:0)
您正在使用i
j
的while循环(counter == 0
)的第一次迭代中覆盖min
(和0
)。正如您的while
说while (i != 0)
,您在一次while
次迭代后立即退出。 if
应该没问题。
答案 1 :(得分:0)
输入和计数器逻辑可以通过以下方式改进:
#include <iostream>
using namespace std;
int main(){
int i;
int j;
int max = 0;
int min = 0;
int counter = 0;
bool flag = true; // fix the input logic
while (flag){
cin >>i;
cin>>j;
if(i==0 || j==0){
flag = false;
break;
}else{
counter ++;
if(counter < 2 ){
//your code
}
else if(i<j){
cout<<"i: "<<i<<" j: "<<j;
j = max;
i = min;
// your code
}
else if(i>j){
//your code
}
}
}
return 0;
}