У других пользователей есть хорошая точка зрения. Я просто хочу добавить, что, поскольку вы только начинаете, вы должны изучить несколько простых способов помочь отладке и найти проблемы с вашим кодом. Одним из самых распространенных инструментов, используемых новичками, являются операторы печати. Если вы добавите операторы печати в ключевые области, вы сможете легко найти проблемы.
cout << "Please enter two integers with the smaller number first, separated by a space. ";
cout << endl;
cin >> num1 >> num2;
/* Make divisor the smaller of the two numbers */
divisor = num1;
cout << "Checking values ..." << endl;
cout << "num1 = " << num1 << endl;
cout << "num2 = " << num2 << endl;
cout << "divisor = " << divisor << endl;
/* While loop to calculate greatest common divisor and number of calculations */
cout << "about to start loop" << endl;
while ( (num1 % divisor != 0 ) && ( num2 % divisor != 0 ) )
{
divisor--;
opers++;
cout << "In the loop and divisor = " << divisor << " and opers = " << opers << end;
}
cout << "after loop" << endl;
Таким образом, вы можете сделать вывод так, как хотите, но это просто для того, чтобы показать идею, лежащую в основе. Я надеюсь, что это поможет вам в дальнейшей отладке. Кроме того, существуют реальные программы отладки, которые намного более продвинуты, чем этот метод; но это работает для простых вопросов.