본문 바로가기

Programming Language/Javascript (Node.js)

[자바스크립트 프로그래밍 입문](2판) 연습문제 - Chapter03. 조건문

반응형

개인적으로 공부한 내용을 담은 포스팅이라 오타나 오류가 있을 수 있다는 점 참고 부탁드립니다~!

Chapter03. 조건문

01. 다음 빈칸을 채우시오.

  • 오전은 hours < 12로 구분한다면, 오후는 hours >= 12로 구분할 수 있다.
  • 변수 number에 숫자가 들어 있다고 할 때, 이 값이 홀수인지 확인하려면 number % 2 == 1을 사용한다.
  • 변수 number에 숫자가 들어 있다고 할 때, 이 값이 짝수인지 확인하려면 number % 2 == 0을 사용한다.
  • 조건 표현식은 불_표현식 ? 참일 때 실행할 문장 : 거짓일 때 실행할 문장이라는 형태로 사용한다.

02. 다음 질문에 OX를 표시하시오.

  • if 조건문은 뒤에 배치되는 불 표현식의 값이 true일 때 문장을 실행한다. O
  • 현재 시간을 구할 때는 Date라는 객체를 사용한다. O
  • if else 조건문은 오전과 오후처럼 두 가지로 나뉘는 상황에 유용하다. O
  • 조건문은 중첩해서 사용할 수 없다. X
    ➡️ 조건문 안에 조건문을 넣는 중첩 조건문은 가능하다.
  • switch 조건문은 반드시 break 키워드를 함께 사용해야 한다. X
    ➡️ 반드시 필요한 건 아니지만, 대부분의 경우에 break를 써서 흐름을 차단한다.

03. 다음 중 조건문과 관련된 키워드가 아닌 것은?

  1. if
  2. else
  3. switch
  4. const

정답: 4번 const

const는 상수 선언 키워드로, 조건문과 직접적인 관련은 없다.

04. 학점을 나타내는 변수 score라고 할 때, 학점 4.2~4.5(4.2와 4.5 포함)를 나타낼 수 있는 조건 표현식을 고르시오.

  1. 4.2 <= score <= 4.5
  2. 4.2 =< score || score <= 4.5
  3. 4.2 <= score && score <= 4.5
  4. 4.2 < score || score < 4.5

정답: 3번

체인 비교는 불가능하며, 두 조건을 모두 만족시켜야 하므로 4.2 <= score && score <= 4.5가 맞다.

05. 자바스크립트에서 Node.js 입력을 받을 때 사용하는 모듈을 고르시오.

  1. input
  2. REPL
  3. message
  4. RIPL

정답: 2번 REPL

REPL(Read Eval Print Loop)은 Node.js에서 입력을 받고 실행하는 환경이다.

06. 다음 중 switch 조건문의 기본 형태와 직접적으로 연관 없는 키워드를 고르시오.

  1. case
  2. break
  3. default
  4. continue

정답: 4번 continue

continue는 반복문에서 사용되는 키워드이며, switch문과는 관련이 없다.

07. 다음 코드의 주석 부분에서 변수 xy에 표와 같은 값을 할당할 때 나오는 실행 결과를 쓰시오.

let x, y;

// 값 할당 부분
if (x > 4) {
    if (y > 2) {
        console.log(x * y);
    }
} else {
    console.log();
}
x y 실행 결과
2 10  
1 4  
10 2  

 

 

 

정답:

x y 실행 결과
2 10 undefined (또는 아무 출력 없음)
1 4 undefined (또는 아무 출력 없음)
10 2 출력 없음 (y > 2 조건 실패)

else 내부의 console.log()는 인자가 없어 undefined를 출력한다.

08. 다음 중첩 조건문을 논리 연산자를 사용해 하나의 if 조건문으로 작성하세요.

if (x > 10) {
  if (x < 20) {
    console.log("조건에 맞습니다.");
  }
}

정답:

if (x > 10 && x < 20) {
  console.log("조건에 맞습니다.");
}

09. 다음 if 조건문으로 작성된 프로그램을 switch 조건문으로 옮기시오.

let level = 1;

if (level == 1) {
    console.log("수강해야 하는 전공 학점: 12학점");    
} else if (level == 2) {
    console.log("수강해야 하는 전공 학점: 18학점");
} else if (level == 3) {
    console.log("수강해야 하는 전공 학점: 10학점");
} else if (level == 4) {
    console.log("수강해야 하는 전공 학점: 18학점");
}

정답:

let level = 1;

if (level == 1) {
  console.log("수강해야 하는 전공 학점: 12학점");
} else if (level == 2) {
  console.log("수강해야 하는 전공 학점: 18학점");
} else if (level == 3) {
  console.log("수강해야 하는 전공 학점: 10학점");
} else if (level == 4) {
  console.log("수강해야 하는 전공 학점: 18학점");
}
반응형