게임개발

프로그래밍 기초 - 반복문

seung_318 2021. 11. 2. 00:47

프로그래밍을 하기에 앞서 기초인 반복문에 대해 알아보도록 하자.

우선 반복문에는 while, for, foreach, break이 있다.

 

while

while문이란 ? 조건이 true일 때, 로직이 반복 실행되는 반복문이다.

사용법은 다음과 같다.

int health = 20;
while(health > 0) {
//이런식으로 ( )안에는 항상 만족하는 조건을 적고 { }안에는 조건이 참일 경우 실행되는 로직을 작성한다.
	health--;
    if(health > 0) 
    	Debug.Log("데미지를 입었습니다. \n남은 피 : " + health);
    else
    	Debug.Log("사망하였습니다.");
}

health-- 와 같이 조건을 거짓으로 만드는 구간을 만들어 while 문을 빠져나갈 수 있다. 

만약 위 코드에서 health-- 가 없더라면 첫 번째 출력이 무한 반복 될것이다.

코드의 결과는 health가 0이 되기전까지는 데미지를 입었다는 문구와 남은 피가 출력 될 것이고

health가 0이 되는 순간 사망하였다는 문구와 함께 while문이 종료된다.

int health = 20;
string condition = "회복중";
while (health > 0) {
	health--;
    if (health > 0) 
    	Debug.Log("데미지를 입었습니다. \n남은 피 : " + health);
    else
    	Debug.Log("사망하였습니다.");
        
    if (condition == "회복중" && health == 10) {
    	Debug.Log("회복중입니다.");
        break;
    }
}

이런식으로 break을 사용하여 빠져나갈 수도 있다.

 

for

for문이란 ? 변수를 연산하면서 로직을 반복 실행하는 반복문이다.

사용방법은 다음과 같다.

for (초기화식; 조건식; 증감식) {
	실행 문장;
}

 

초기화식이 조건에 만족하면 반복하고 만족하지 못하면 빠져나가는 형태이다.

for (int count = 0; count<10; count++) {
	health++;
    Debug.Log("치료중.." + health);
}

 

이런식으로도 표현할 수 있다. 

다들 한 번쯤은 들어봤을법한 *트리 문제도 for문으로 작성한다.

for(int i=0;i<10;i++){
    for(int j=10-1;j>i;j--){
        printf(" ");
    }
	    
    for(int j=0;j<2*i+1;j++){
	printf("*");
    }
    printf("\n");
}

이렇게 중첩 for문을 사용하여  *과 공백으로 피라미드 모양도 만들 수 있다.

 

참고 : 골드메탈