🤍 전 강의 25% 할인 중 🤍

2024년 상반기를 돌아보고 하반기에도 함께 성장해요!
인프런이 준비한 25% 할인 받으러 가기 >>

  • 카테고리

    질문 & 답변
  • 세부 분야

    프로그래밍 언어

  • 해결 여부

    미해결

while을 for로 바꾸기 질문

20.05.16 16:52 작성 조회수 137

0

안녕하세요?

강의 잘 듣고 있습니다.

강의 중 말씀하셨던 +, -. *, /를 추가해 보았고, switch문으로도 바꾸어 보았습니다. 

그런데 getInt() 함수의 while문을 for문으로 바꿔보라고 하셨는데 그건 어떻게 바꿔야할지 감이 안오네요ㅜㅜ

알려주시면 감사하겠습니다.

#include <iostream>

using namespace std;

int getInt()

{

while (true)

{

cout << "Enter a integer number : ";

int x;

cin >> x;

if (std::cin.fail())

{

std::cin.clear();

std::cin.ignore(32767, '\n');

cout << "Invalid number, please try again";

}

else

{

std::cin.ignore(32767, '\n');

return x;

}

}

}

char getOperator()

{

while (true)

{

cout << "Enter an operator (+, -, *, /) : ";

char op;

cin >> op;

std::cin.ignore(32767, '\n');

if (op == '+' || op == '-' || op == '*' || op == '/')

{

return op;

}

else

{

cout << "Invalid operator, please try again" << endl;

}

}

}

void printResult(int x, char op, int y)

{

switch (op)

{

case '+':

cout << x + y << endl;

break;

case '-':

cout << x - y << endl;

break;

case '*':

cout << x * y << endl;

break;

case '/':

cout << x / y << endl;

break;

}

}

int main()

{

int x = getInt();

char op = getOperator();

int y = getInt();

printResult(x, op, y);

return 0;

}

답변 1

답변을 작성해보세요.

1

Hello Yeo님의 프로필

Hello Yeo

2020.05.16

for ( ; ; )
에서 어떤 부분이 조건을 담당하고 있는지 생각해보시면 될 것 같습니다.

채널톡 아이콘