While문 for문 변환 - whilemun formun byeonhwan

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

#include <iostream>

using namespace std;

int main(){

int i = 1;

int sum = 0;

while(i<=10){

sum += i;

++i;

}

cout << "현재 i의 값 = " << i << endl;

cout << "1~10 까지의 합계 : " << sum << endl;

return 0;

}

cs

위 소스를 for문으로 바꿔보겠습니다.

위 소스랑 비교해보세요.

#include <iostream>

using namespace std;

int main(){

int i = 1;

int sum = 0;

for (;i <= 10++i){

sum += i;

}        

cout << "현재 i의 값 = " << i << endl;

cout << "1~10 까지의 합계 : " << sum << endl;

return 0;

}

cs

for문 공식은 아래 사진으로 이해해보세요.

While문 for문 변환 - whilemun formun byeonhwan

사진 엉망인 점 죄송합니다 ㅜ

for(최초실행값;true검사조건;반복조건)

{

반복될 소스

}

입니다.

반복문

반복문은 어떤 작업이 반복적으로 실행되도록 할 때 사용되며, 반복문의 종류로는 for문, while문, do-while문이 있다.

for문은 반복 횟수를 알고 있을 때 주로 사용하고, while문은 조건에 따라 반복할 때 주로 사용한다. while문과 do-while문의 차이점은 조건을 먼저 검사하느냐 나중에 검사하느냐일 뿐 동작 방식은 동일하다. 

		int Num = 0;
		Num++; 	//1
		Num++;	//2
		Num++;	//3
	    System.out.println(Num);

똑같은 실행문을 반복적으로 실행할 경우가 있다. 위에 코드는 1~3까지의 합을 구하는 것으로 작성되어 있다.

하지만 구하는 값이 커진다면 코드양이 엄청 늘어나게 된다. 

for문
int sum = 0;
for(int i = 1; i < 100; i++){
	sum = sum + i;
	}
	System.out.println("1~100까지의 합:" + sum);

반복문은 한번 작성된 실행문을 여러번 반복 실행해주기 때문에 코드를 간결하게 만들어 준다. 

While문 for문 변환 - whilemun formun byeonhwan

▶  ⓛ초기화식이 제일 먼저 실행이 되며  ②조건식을 평가해서 true일 때 ③ 실행문장을 실행시킨다. 

     블럭의 내부가 실행되면 ④증감식을 실행시키고 ② 조건식을  평가한다. 

     false이면 for문 블럭을 실행하지 않고  끝나게 된다. 

while문 

for문이 정해진 횟수만큼 반복한다면, while문은 조건식이 true일 경우에 계속해서 반복한다. 조건식이 false가 되면 반복행위를 멈추고 while문을 종료한다. 

While문 for문 변환 - whilemun formun byeonhwan

▶  ⓛ조건식을 평가한다 . 평가결과가 true이면 ②실행문을 실행한다. 

    실행문이 모두 실행되면 다시 조건식으로 되돌아가서 ⓛ조건식을 다시 평가한다. 

    조건식이 true라면 다시 진행하고, false라면 while문을 종료한다. 

15번 num 값을 1증가하기

while문

		int num = 0;
		int z = 0;
		
		while(z < 5) {  //조건결과가 false인 경우 반복문 빠져나감.
			num++;
			z++; 		//반복횟수
			System.out.println("반복횟수:"+z +" Num변수값 :"+num);
		}

결과값 

반복횟수:1 Num변수값 :1
반복횟수:2 Num변수값 :2
반복횟수:3 Num변수값 :3
반복횟수:4 Num변수값 :4
반복횟수:5 Num변수값 :5

◆ 5번 반복하면서 num 변수값 3배 증가하기 

while문

			int num = 1;
			int i = 0;
			
			while(i < 5) {
				num *= 3;
				System.out.println("반복횟수:" + i +"num변수값 :" + num);
				i++;
			}

for문 

			int numa = 1;
			for(i = 0; i < 5; i++) {
				numa *= 3;
				
				System.out.println("반복횟수:" + i +"numa변수값 :" + numa);			
			}

결과값

반복횟수:0num변수값 :3
반복횟수:1num변수값 :9
반복횟수:2num변수값 :27
반복횟수:3num변수값 :81
반복횟수:4num변수값 :243
-------for---------------
반복횟수:0numa변수값 :3
반복횟수:1numa변수값 :9
반복횟수:2numa변수값 :27
반복횟수:3numa변수값 :81
반복횟수:4numa변수값 :243
do-while문

while문은 시작할 때부터 조건식을 검사하여 블럭 내부를 실행할지 결정하지만, 경우에 따라서 블럭 내부의 실행문을 우선 실행시키고 실행결과에 따라서 반복 실행을 계속할지 결정하는 경우도 발생한다.

While문 for문 변환 - whilemun formun byeonhwan

▶  ⓛ실행문을 우선 실행한다. 실행문이 모두 실행되면 ②조건식을 평가하는데 그 결과가 true이면 반복 실행을 하고, 

    조건식의 결과가 false이면 do-while문을 종료한다.

    작성시 while문 뒤에 반드시 세미콜론(;)을 붙여야 한다.