뉴비 시절의 추억

아 여러번 하기 귀찮다 할 때 쓰는 코드 반복문!!

태장고 21302 2021. 3. 30. 01:29

반복문이란 말 그대로 귀찮아서 쓰는 거다. 만약 a라는 수를 100번 출력하려 한다. 거기에 한 술 더 떠서 한번 출력하면 줄을 바꾸라고 한다.

그러면 우리는 코드를 어떻게 짜는가? 배운대로라면

 #include <stdio.h>

 

int main()

{

int a;

scanf("%d", &a);

 

printf("%d", a);

printf("%d", a);

printf("%d", a);

printf("%d", a);

.

.

.

printf("%d", a);

printf("%d", a);

 

return 0;

}

 

아마 이렇게 짤 것이다. 근데 이건 보기만 해도 구역질이 나지 않는가? 정신이 나갈 거 같지 않은가? 만약 저렇게 코드를 짠다면 원하는 형태의 출력은 할 수 있겠지만 100번을 모두 입력하고 있는 자신의 손가락에게 안부를 물어보아라 아마 너를 거부하고 공격할 수도 있다 ^^ (농담입니닷!!)

여기서 한번 더 가보겠다. 만약 너의 직장 상사가 0을 잘못세서 알고 보니 10000번 이었다고 하자

10000개를 어느 세월에 치고 있을 것인가?! 이럴 때 쓰는 것이 반복문이다.

 

반복문의 형태는 일단 한가지만 제대로 알아두자 for 이라는 건데 for의 뜻은 '~동안' 즉 특정한 조건이 만족하는 한 계속 코드를 실행한다는 것이다. 위에 처럼 너의 손가락을 학대하지 않아도 된다는 것이다.

 

자 서론이 길었고 본격적으로 for을 어떻게 쓰는지 알아보자!

기본 형태는 이러하다

for(i=1; i<=n; i++)            // i가 설정(선언)되지 않았다면 먼저 설정을 해주어라.

                                       n은 변수이다. 위 예의 경우에는 10000이 될것이다. 마지막에 있는 i++은 "증감연산자"

                                      라는 것인데 절대 외우지 말아라 되게 의미 자체는 쉽다. i에 1씩 더해 준다는 것이다.

코드를 전체적으로 풀이 하자면 i가 1에서 부터 출발해서 n의 값이 되기 전까지 실행한다는 것이다. 이제 더이상 노가다로 10000번 printf()를 치지 않아도 된다. 

for을 사용한 코드를 써 보겠다.

 

#include <stdio.h>

 

int main()

{

int i, n;

scanf("%d%d", &i, &n);

  for(i=1; i<=n; i++)

  {

    pritnf("%d", a);

  }

return 0;

}

이렇게하면 n에 어떤 수가 들어오던 그 수만큼 출력할 수 있다.

 

이 외에도 while 도 있지만 우선 for만 해 두어도 거의 대부분의 문제가 풀린다.