원하는 코드를 원하는 만큼 반복하여 실행하는 코드
for (int i = 0; i<num ; i++) {
// code
}
총 num회 반복하는 for문의 기본적인 형태이다
소괄호 안에서 카운터를 정의할 수 있다
a++ 또는 ++a
b-- 또는 --b


증/감 연산자가 변수의 앞에 붙느냐 뒤에 붙느냐의 차이는
이 변수의 값을 먼저 판단하고 증가시킬지 증가시키고 값을 판단할 것인지를 계산하는 것의 차이
cout << "a는 " << a << ", b는" << b << endl;
마지막에 코드를 추가해서 결과를 다시 확인해 보면 모두 +1이라는 계산을 하기 때문에 a와 b 둘 다 11로 출력이 된다
-- 감소 연산자도 이와 같은 방식으로 작동한다
부등호로 연결된 식
수학에서 사용하는 부등호와 완벽히 동일한 방식으로 작동한다
관계연산자의 수행값은 true나 false로만 반환된다
대입연산자 =와 관계표현식의 ==을 혼동하지 않도록 주의
많은 컴퓨터 언어에서 !는 부정의 뜻으로 많이 사용한다
while문과 do while문은 for문과 달리 조건을 검사하는 부분만 똑 떼어서 소괄호에 정의하는 형태로 사용한다
=> 카운터가 미리 정의되어 있어야 한다
int 1 = 0;
while (i < 3) {
// code
// i 증가/감소 연산자
}
무한루프를 만들고 싶은 게 아니라면 while문의 몸체 안에 꼭 증가/감소 연산자를 선언해 주어야 한다
while문은 for문과 다르게 boolean 데이터 하나만으로 소괄호 내부를 정의할 수 있다
대신, 루프 몸체 안에 그 boolean 결과값을 변화할 요소가 반드시 있어야 한다


for문과 while문은 소괄호 내부에 어떤 내용이 정의되어야 하는지만 다르고 완벽하게 같은 방식으로 동작한다
차이점
1. while문 내부는 boolean 데이터 하나만으로 선언될 수 있다
=> 관계표현식 없이 while문을 구성할 수 있다
2. 카운터 값을 반복문 내부에서 초기화할 수 있는지의 여부
=> for문은 소괄호 안에서 초기화 가능하나 while문은 불가능하다
<=> 반대로, for문 밖에서는 소괄호 안에서 초기화한 카운터 값을 사용할 수 없으나 while은 가능하다
반복을 실행하고 조건을 검사한다
=> while문이 false여도 무조건 한 번은 실행된다
int j = 0;
do {
// code
j++;
} while (j < 3);
return 0;
int a[5] = {1, 3, 5, 7, 9};
for (int i : a) {
//code
}
for문 안에 또다른 for문을 선언하여 그 반복을 중첩하여 사용하는 반복문
이 중첩 반복문은 2차원 배열에서 가장 많이 활용된다
행과 열을 가진 표 형태의 배열
배열 안에 배열을 선언하는 방식으로 생성한다
int temp[m][n]
이렇게 배열을 선언하게 되면, m개의 원소 하나하나가 n개의 원소를 가진다는 의미이다
=> m*n 표 형태


2차원 배열의 모든 값을 출력하였다