반복문의 신상을 털어보자.

무제·2021년 3월 13일
0
post-thumbnail

반복문 너 뭐니?


저 짤을 보니 요즘 나를 보는 것 같다. 일어나서 수업 듣고 밥 먹고 수업 듣고 코드 공부하고 수업 듣고 페어와 코딩 문제 풀고 밥 먹고 보충 공부 하고 😴 zzz. 코드로 표현하자면..

function everyDay(){
  let routine = '';
  for(let i = 0; i < 5개월; i++) {
    routine +='day ' + i + ': 일어나기, 수업 듣기, 밥 먹기, 수업 듣기, 코드 짜기, 수업 듣기, 문제 풀기, 밥 먹기, 보충 공부 하기'
  }
return routine;
};

이제 조금 더 깊숙히 다뤄보자. 그 전에 우리는 왜 반복문을 사용하는 지에 대해 알아boja.

우리는 왜 반복문을 사용할까?

예를 들어 숫자를 입력 받아 1부터 그 숫자까지 더하는 프로그램을 생각해보자.
밑의 코드는 반복문을 사용하지 않고 1부터 5까지 더하는 코드입니다.

let result = 0;
result = result + 1;
result = result + 2;
result = result + 3;
result = result + 4;
result = result + 5;
console.log(`1부터 5까지 더한 값은 ${result}`) // 1부터 5까지 더한 값은 15

근데 만약 1부터 1000까지 더한 값을 구해야 한다면 ? 저 코드드를 1000번이나 작성해야....whyrano..whyrano..
이럴 때 반복문을 사용합니다.
이제 반복문에 대해 흥미가 생기시나요?

공부할 생각에 군침이 도시나요?! 그렇다면 가시죠 😎

for 반복문

for문의 생김새를 털어라

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

기본적인 형태는 위의 코드와 같습니다.

  1. 초기값 : 반복문이 시작할 때 어떤 값으로 시작할지 정해주는 역할을 합니다.
  2. 조건식 : 언제까지 반복할지 정하는 역할을 합니다.
  3. 증감식 : 반복이 진행되면 값이 어떻게 변화하는지 정해주는 역할을 합니다.
  4. 실행할 문장 : 반복해야 할 코드를 작성합니다.

여기서 중요한 규칙 하나가 있습니다. 그것은 바로 세미콜론(;) 입니다. 반복문에 대한 규칙, 즉 소괄호 안에 작성된 것들 사이에 세미콜론으로 꼭 구분해주셔야 합니다.

for문을 한번 사용해boja.

이제 우리는 위에 1부터 100까지 더해주는 코드를 아주 간단히 작성할 수 있습니다.

let result = 0;
for(let i = 1; i < 101; i++) {
  result = result + i;
}
console.log(`1부터 100까지 더한 값은 ${result}`) // 1부터 100까지 더한 값은 ????

값은 한번 구해보세요 ㅎㅎ
100줄의 코드를 우린 반복문을 사용해서 단, 4줄의 코드로 줄였습니다.

그런데 만약 1부터 1000까지 더해야 한다면?

result = result + 1

이 코드를 몇 번 반복해야죠 ? 1000번이죠 ? 그렇다면 대충 어떻게 하셔야 하는지 감이 오시죠?

for(let i = 1; i < 101; i++) {
  let result = 0;
  result = result + i;
  console.log(`1부터 100까지 더한 값은 ${result}`) // 꼭 콘솔창에 실행해 보세요!
}

간혹 위처럼 result 변수 선언과 동시에 0을 할당하는 구문을 for 반복문 안에다가 넣는 실수를 하기도 한다. 그러면 절대 안된다 ❌ for 반복문 안에 변수를 선언, 값을 할당하는 문장을 넣는다면 변수를 100번 선언하고 100번 하라는 의미다. 우리는 단 하나의 변수를 선언하고 그 변수에 값을 100번 재 할당해야하는데 말인데...

while 반복문

for문은 대충 알겠는데 while은 또 뭔데 ?

"그래서 while문이랑 다투다가 while문이 뚝배기로 저를 때렸어요"

자 아직 뚝배기 깨지기 이릅니다. 더 가봅시다 !

while문의 생김새를 털어라

while (조건식) {
  // 실행할 문장
}
  1. 조건식 : 조건식이 참이기만 하면 while문 안에 있는 코드가 실행됩니다.
  2. 실행할 문장 : 반복해야 할 코드를 작성합니다.

주의사항 - 실행할 문장에 다음 반복 시 조건이 참이 될지 거짓이 될지를 정해주는 문장이 있어야 합니다.

let i = 0
while(i < 11){
  console.log(i);
  i = i + 1; // 다음 반복 시 조건이 참이 될지 거짓이 될지 정해준다.
  	     // 만약 10번 반복이 되면, i=10가 될거고 10번째 반복이 끝나면 i는 11이 된다.
  	     // 그렇다면 조건식이 false이기 때문에 반복문은 중지된다.
}

while문을 한번 사용해boja.

let i = 0;
let result = 0;
while(i < 11){
  result += i;
  i = i + 1
}
console.log(result) // 55

다시 한번 강조! 실행할 문장에 다음 반복 시 조건이 참이 될지 거짓이 될지를 정해주는 문장이 있어야 합니다. 저 위에서는 i = i + 1 이겠죠? 없으면 무한으로 돌아서 컴퓨터가 화냅니다...


while 문의 설명이 조금 간략하지만 저는 최선을 다했습니다. 반복문이 사실 이해하긴 쉬워도 적용해서 써먹기에는 골치아픈 녀석이란 걸 알고 있다. 그렇지만 이 거친놈들을 잘 다루기만 한다면 여러분의 코드는 훠~~~~~~얼씬 멋진 코드가 될거라고 확신합니다
🔥 화이팅 🔥 ! 그럼 저는 이만 여기서 마치구 ~~ 다음에 더 멋진 주제로 봐요 ~~

profile
표현할 수 없는 무제공책

0개의 댓글