我获得了一个伪代码转换成C ++:
Set a Boolean variable “first” to true.
While another value has been read successfully
If first is true
Set the minimum to the value.
Set first to false.
Else if the value is less than the minimum
Set the minimum to the value.
Print the minimum
这是我的代码:
bool first = true;
bool read_value = true;
int value = 0;
int minimum = 0;
cout << "Enter an integer : " ;
cin >> value;
while(cin.hasNextInt()) // error here
{
cout << "Enter another integer : " ;
cin >> minimum;
if( first == true){
minimum = value;
first = false;
}else if ( value < minimum){
minimum = value;
}
}
cout << minimum;
system("PAUSE");
return 0;
那里的hasNextInt有错误。我真的不知道伪代码想要什么。有人可以向我解释一下吗?
提前致谢。
答案 0 :(得分:1)
标准C ++库中没有hasNextInt()
函数(这就是你无法编译的原因)。但是在Java中有一个!
答案 1 :(得分:0)
这更接近您想要的代码:
cout << "Enter an integer : " ;
while( cin >> value )
{
if( first == true){
minimum = value;
first = false;
}else if ( value < minimum){
minimum = value;
}
cout << "Enter another integer : " ;
}
答案 2 :(得分:0)
那是愚蠢的伪代码。没有一些毫无价值的布尔,我们可以做得更好......
int min = std::numeric_limits<int>::max();
for(int val; cin >> val)
{
if(val < min)
min = val;
}
cout << "Minimum: " << min << '\n';