꾸준한 개발자

계속적인 성장을 추구하는 개발자입니다. 꾸준함을 추구합니다.

계속 쓰는 개발 노트

JAVASCRIPT/자바스크립트 연습

다양한 패턴의 제어문 연습

gold_dragon 2020. 9. 7. 19:10

1. 변수 x가 10보다 크고 20보다 작을 때 변수 x를 출력하는 조건식을 완성하라

const x = 15;
if (x > 10 && x < 20) {
    console.log(x);
}

2. for문을 사용하여 0부터 10 미만의 정수 중에서 짝수만을 작은 수부터 출력하시오.

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

3. for문을 사용하여 0부터 10 미만의 정수 중에서 짝수만을 작은 수부터 문자열로 출력하시오.

let result = '';
for (let i = 0; i < 9; i++) {
    if (i % 2 === 0) result += i;
}
console.log(result);

4. for문을 사용하여 0부터 10 미만의 정수 중에서 홀수만을 큰 수부터 출력하시오.

for (let i = 9; i > 0; i--) {
    if (i % 2 !== 0) console.log(i);
}

5. while문을 사용하여 0 부터 10 미만의 정수 중에서 짝수만을 작은 수부터 출력하시오.

let num = 0;
while (num < 9) {
    if (num % 2 === 0) console.log(num);
    num++;
}

6. while문을 사용하여 0 부터 10 미만의 정수 중에서 홀수만을 큰 수부터 출력하시오.

let num = 9;
while (num > 0) {
    if (num % 2 !== 0) console.log(num);
    num--;
}

7. for 문을 사용하여 0부터 10 미만의 정수의 합을 출력하시오.

let result = 0;
for (let i = 1; i < 10; i++) {
    result += i;
}
console.log(result);

8. 1부터 20 미만의 정수 중에서 2 또는 3의 배수가 아닌 수의 총합을 구하시오.

/* let result = 0;
for (let i = 1; i < 20; i++) {
    if (i % 2 === 0 || i % 3 === 0) continue;
    result += i;
}
console.log(result); */

// continue는 ESLint에서 표준이 아닙니다. 가독성을 떨어트릴 수 있습니다.

let result = 0;
for (let i = 1; i < 20; i++) {
    if (i % 2 !== 0 && i % 3 !== 0) result += i;
}
console.log(result);

9. 1부터 20 미만의 정수 중에서 2 또는 3의 배수인 수의 총합을 구하시오.

let result = 0;
for (let i = 1; i < 20; i++) {
    if (i % 2 === 0 || i % 3 === 0) result += i;
}
console.log(result);

10. 두 개의 주사위를 던졌을 때, 눈의 합이 6이 되는 모든 경우의 수를 출력하시오.

for (let i = 1; i < 6; i++) {
    console.log([i, 6 - i]);
}

// -----------------------------------------
// 이중 for문 이용하면 아래와 같음
for (let i = 1; i < 6; i++) {
    for (let j = 1; j < 6; j++) {
        if (i + j === 6) console.log([i, j]);
    }
}

11. 삼각형 출력하기 - pattern 1

다음을 참고하여 *(별)로 높이가 5인(var line = 5) 삼각형을 문자열로 완성하라. 개행 문자('\n')를 사용하여 개행한다. 완성된 문자열의 마지막은 개행 문자(‘\n’)로 끝나도 관계없다.

let result = '';
for (let i = 0; i < 5; i++) {
    for (let j = 0; j <= i; j++) {
        result += '*';
    }
    result += '\n';
}
console.log(result);

12. 삼각형 출력하기 - pattern 2

다음을 참고하여 *(별)로 트리를 문자열로 완성하라. 개행문자('\n')를 사용하여 개행한다. 완성된 문자열의 마지막은 개행 문자('\n')로 끝나도 관계없다.

let result = '';
for (let i = 0; i < 5; i++) {
    for (let j = 1; j <= i; j++) {
        result += ' ';
    }
    for (let z = 5; z > i; z--) {
        result += '*';
    }
    result += '\n';
}
console.log(result);

13. 삼각형 출력하기 - pattern 3

다음을 참고하여 *(별)로 트리를 문자열로 완성하라. 개행문자(‘\n’)를 사용하여 개행한다. 완성된 문자열의 마지막은 개행 문자(‘\n’)로 끝나도 관계없다.

let result = '';
for (let i = 0; i < 5; i++) {
    for (let j = 5; j > i; j--) {
        result += '*';
    }
    result += '\n';
}
console.log(result);

14. 삼각형 출력하기 - pattern 4

다음을 참고하여 *(별)로 트리를 문자열로 완성하라. 개행문자(‘\n’)를 사용하여 개행한다. 완성된 문자열의 마지막은 개행 문자(‘\n’)로 끝나도 관계없다.

let result = '';
for (let i = 0; i < 5; i++) {
    for (let j = 4; j > i; j--) {
        result += ' ';
    }
    for (let z = 0; z <= i; z++) {
        result += '*';
    }
    result += '\n';
}
console.log(result);

15. 정삼각형 출력하기

 

let result = '';
for (let i = 0; i < 5; i++) {
    for (let j = 4; j > i; j--) {
        result += ' ';
    }
    for (let z = 0; z <= i * 2; z++) {
        result += '*';
    }
    result += '\n';
}
console.log(result);

16. 정삼각형 출력하기

let result = '';
for (let i = 0; i < 5; i++) {
    for (let j = 1; j <= i; j++) {
        result += ' ';
    }
    for (let z = 9; z > i * 2; z--) {
        result += '*';
    }
    result += '\n';
}
console.log(result);