가장 많이 사용되는 for문에 대해 알아보자.
while
같은 경우는 일단 전제가 무한루프이므로 돌리고 보자 라는 성격이 강하지만, for문 같은 경우에는 반복횟수가 정해져 있을 때 사용하는 성격이 강하다.
#include <iostream>
int main()
{
using namespace std;
for (int count = 0; count < 10; count++)
{
cout << count << endl;
}
return 0;
}
output : 0
1
2
3
4
5
6
7
8
9
가장 기본적인 예제이다. 근데 이와 같이 사용하면 다른 데에서 사용못하는 상황이 발생한다. 예로 보여주면 이렇다.
그림과 같이 빨간색으로 오류를 나타내는데 count
라는 변수를 더이상 못쓴다는 것이다. 이런 경우에는 다음과 같이 바꿔줘서 코딩을 해도 된다.
문제 없이 출력되는 것을 볼 수 있다. for
문에 ;
만 나와도 되냐 라고 하는데 상관없다.
또한 for문으로 여러개의 연산을 동시에 할 수도 있다.
이중 for문을 사용해 풀이하는 방법도 있다.
int main()
{
using namespace std;
for (int i = 0; i < 10; ++i)
for (int j = 0; j < 10; ++j)
{
cout << i << " " << j << endl;
}
return 0;
}
user마다 코딩하는 방식이 다르기 때문에, 그에 맞는 방법을 찾아 사용하길 권장한다.
#include <iostream>
int main()
{
using namespace std;
for (int i = 0; i < 10; ++i)
{
if (i % 2 == 0) continue;
cout << i << endl;
}
return 0;
}
continue
를 이용해 제어를 할 수도 있는데, 좀 돌아가는 방식이 신기하다. break
문 같은 경우에는 한 scope 밖으로 넘어가 그 프로그램이 종료되는 방식이라면 continue
문은 해당 조건이 걸리면 다시 그 위 조건문으로 되돌아가는 방식이다. scope밖으로 빠져나오는 것이 아니라 해당 scope의 초기 조건으로 다시 되돌아가는 성격을 갖는다.
#include <iostream>
int main()
{
using namespace std;
int count(0);
while (true)
{
char ch;
cin >> ch;
if (ch != 'x') continue;
break;
}
return 0;
}
이 예제도 한번 해보길 바란다.