Мне дали псевдокод для перевода на 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 там. И я действительно не знаю, чего хочет псевдокод. Может кто-нибудь объяснить мне?
Заранее спасибо.
Здесь нет hasNextInt()
функция в стандартных библиотеках C ++ (и поэтому вы не можете скомпилировать). Однако в Java есть один!
Это ближе к коду, который вы хотите:
cout << "Enter an integer : " ;
while( cin >> value )
{
if( first == true){
minimum = value;
first = false;
}else if ( value < minimum){
minimum = value;
}
cout << "Enter another integer : " ;
}
Это глупый псевдокод. Мы можем добиться большего успеха без какого-либо бесполезного хулиганства …
int min = std::numeric_limits<int>::max();
for(int val; cin >> val)
{
if(val < min)
min = val;
}
cout << "Minimum: " << min << '\n';