Я только начал изучать C ++ и не обладал никаким техническим опытом, поэтому, пожалуйста, будьте терпеливы со мной! Я использую Codecademy для обучения и столкнулся с проблемой при выполнении одного из упражнений. Я попытался создать эту функцию для удаления повторяющегося кода в main()
.
#include <iostream>
std::string on_off_attempt;
std::string IT_support(){
std::cout << "Hello. IT\n";
std::cout << "Have you tried turning it off and on again? y/ n\n";
std::cin >> on_off_attempt;
if (on_off_attempt == "y"){
std::cout << "It should be working now!\n";
}
else if (on_off_attempt == "n"){
std::cout << "Then please try again!\n";
}
else {
std::cout << "Invalid Input!\n";
std::cin >> on_off_attempt;
}
return on_off_attempt;
}
. Что касается первого ввода, он работает нормально, но при следующем запросе ввода он больше не подтверждает ввод для on_off_attempt
и сразу просто переходит к следующей выходной строке. Ниже приведен код main()
.
int main() {
// Conduct IT support
IT_support();
// Check in with Jenn
std::cout << "Oh hi Jen!\n";
// Conduct IT support again...
IT_support();
// Check in with Roy
std::cout << "You stole the stress machine? But that's stealing!\n";
// Conduct IT support yet again...zzzz...
IT_support();
}
Может кто-нибудь сказать мне, что я делаю неправильно? Любая помощь будет оценена! :)