[Javascript] #5. 반복문(for, while)

Jihye·2024년 1월 6일

JavaScript

목록 보기
6/14
post-thumbnail

앞으로 해야 할 모든 일은 함수만들고.. 반복하는거라고 한다..

반복문

똑같은 명령을 일정 횟수만큼 반복해 수행하도록 하는 실행문

for 문


초기화식 : 어디서부터 시작할 것이냐
조건식 : 어디까지 할 것이냐
증감식 : 몇 개씩 증가/감소 할 것이냐

실행 원리

step1. 1씩 증가

for(let index=0 ; index<10 ; index++){
  console.log(index"번째");
}

결과는 console 상에 0부터 9까지 출력 된다.

//step1. 0부터 5까지 1씩 증가
for (let i = 0; i <= 5; i++) {
    console.log(i);
}

결과는 0부터 5까지 출력 된다.

step2. 1씩 감소

for (let l = 5; l >= 0; l--) {
    console.log(l);
}

결과는 5부터 0까지 출력된다.

step3. 1부터 10까지 중에 짝수 출력

for (let even = 1; even <= 10; even++) {
    if (even % 2 == 0) {
        console.log(even);
    }
}
for (let even = 2; even <= 10; even = even + 2) {
    console.log(even);
}

step4. 배열과 함께

const colors = ['red', 'orange', 'yellow', 'green', 'blue', 'navy', 'purple'];
for (let l = 0; l < colors.length; l++) {
    console.log(`무지개의 ${l + 1}번째 색상은${colors[l]}`);
}

실습1

1)10000까지의 숫자 중에서 13의 배수이면서 홀수인 숫자를 찾아봅시다.

for (let i = 0; i <= 10000; i++) {
    if (i % 13 == 0 && i % 2 == 0) {
        console.log(i);
    }
}

2)덧붙혀서 prompt 함수를 이용해서 입력받은 수까지의 13의 배수이면서 홀수인 숫자를 찾는 프로그램을 만들어 봅시다.

const num=Number(prompt(숫자 입력하세요));
for (let i = 0; i <= num; i++) {
    if (i % 13 == 0 && i % 2 == 0) {
        console.log(i);
    }
}

실습2. 이중 for문

for문 이용해서 구구단 만들어봅시다.

for(let dan=1;dan<=9;dan++){
  console.log(`---${dan}단---`)
  for(let i =1;i<=9;i++){
  console.log(`${dan} x ${i} =$[{dan*i})
  }
}

응용 버전으로 함수까지 선언해봤다.. 함수이름은 camelCase로 선언하고 : )
굳이 함수까지 선언한 version은 다음과 같다.

function tableFunc(num1, num2) {
    console.log(`${num1} * ${num2} = ${num1 * num2}`);
}

for (let i = 1; i <= 9; i++) {
    console.log(`---${i + 1}단---`);
    for (let l = 0; l <= 9; l++) {
        tableFunc(i, l);
    }
}

while 문

while(조건문){
		실행할 코드(명령문)
}
  • for 문과 달리 조건을 변경하는 구문이 기본적으로 포함되어 있지 않기 때문에 무한 루프 가능하다.

  • 조건문이 true 값을 가진다면 무한루프이다.

주의 사항

조건문의 탈출조건이 있어야 하거나 혹은 조건문에 탈출 조건이 없으면 break;를 넣어줘야 한다.

step1. 1씩 증가

조건문에 탈출 조건이 있는 경우

let step1 = 1;
while (step1 <= 5) {
    console.log(step1);
    step1++;
}

step2. 1씩 감소

조건문에 탈출 조건이 있는 경우

let step2 = 9;
while (step2 >= 4) {
    console.log(step2);
    step2--;
}

step3. 홀수만 출력

조건문에 탈출 조건이 있는 경우

let step3 = 1;
while (step3 <= 10) {
    if (step3 % 2 == 1) {
        console.log(step3);
    }
    step3++;
}

step4. break; 사용

let step4 = 0;

while (true) {
    console.log(step4);
    step4++;
    if (step4 === 10) {
        break;
    }
}

break

반복문을 멈추고 밖으로 빠져 나간다.

for(let i=0; i<100;i++){
    if (i==11){
        console.log('끝');
        break;
    }
}

continue

반복문을 한번만 멈추고 실행하지 않고 다음 순서로 넘어간다.

let sum = 0;
for (let l = 0; l < 100; l++) {
    if (l % 2 === 0) {
        continue;
    }
    sum += l;
}
console.log(sum);

0개의 댓글