본문 바로가기

개발 공부

혼공스 Chapter.3

if 조건문 : 조건에 따라 코드를 실행하거나 실행하지 않도록 하기 위해 사용하는 구문.

else 구문 : if 조건문 뒤에 사용하며, if 조건문이 거짓일 때 사용.

중첩 조건문 : 조건문을 중첩해서 사용하는 경우를 의미.

if else if 조건문 : 중첩 조건문에서 중괄호를 생략한 형태, 겹치지 않는 3가지 이상의 조건으로 나눌 때 사용.

 

확인 문제

1. 다음 예제 중에서 '참입니다'를 출력하는 것은?

①
<script>
    const x = 1
    if (x > 4) {
        console.log('참입니다')
    }
</script>
②
<script>
    const x = 0
    if (x > 4) {
        console.log('참입니다')
    }
</script>
③
<script>
    const x = 10
    if (x > 4) {
        console.log('참입니다')
    }
</script>

정답 : 3번

2. 사용자로부터 숫자 2개를 입력받아 첫 번째 입력받은 숫자가 큰지, 두 번째 입력받은 숫자가 큰지를 구하는 프로그램 완성하라.

<script>
    const a = Number(prompt('첫 번째 숫자', ''))
    const b = Number(prompt('두 번째 숫자', ''))
    if (a > b) {
    alert('첫 번째로 입력한 숫자가 더 큽니다.')
    } else if (a === b) {
    alert('두 숫자가 같습니다.')
    } else {
    alert('두 번째로 입력한 숫자가 더 큽니다.')
    }
   </script>

3. 중첩 조건문은 2장에서 배운 논리 연산자를 적용해 하나의 if 조건문으로 만들 수 있다. 어떤 논리 연산자가 들어가야 하는가?

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

4. 사용자에게 숫자를 입력받아 양수, 0, 음수를 구분하는 프로그램을 만들어라.

<script>
 const a = Number(prompt('숫자를 입력해주세요.', ''))
 if (a > 0) {
 alert('입력한 숫자는 양수입니다.')
 } else if (a == 0) {
 alert('입력한 숫자는 0입니다.')
 } else {
 alert('입력한 숫자는 음수입니다.')
 }
</script>

5. 사용자에게 숫자를 입력받아 홀수와 짝수를 구분하는 프로그램을 만들어라.

<script>
 const a = Number(prompt('숫자를 입력해주세요.', ''))
 if (a % 2 === 0) {
 alert('입력한 숫자는 짝수입니다.')
 } else {
 alert('입력한 숫자는 홀수입니다.')
 }
</script>

6. 현재가 몇 월인지 확인하고, 계절을 구분하는 프로그램을 만들어라.

<script>
 const a = Number(prompt('월을 입력해주세요.', ''))
 if (3 <= a && a <= 5) {
 alert('봄입니다.')
 } else if (6 <= a && a <= 8) {
 alert('여름입니다.')
 } else if (9 <= a && a <= 11) {
 alert('가을입니다.')
 } else {
 alert('겨울입니다.')
 }
</script>

 

switch 조건문 : 값에 따라서 조건 분기를 걸어주는 조건문

조건부 연산자 : A ? B : C와 같은 형태로 피연산자 3개를 같은 연산자.

짧은 조건문 : 논리 연산자의 특이한 성질을 사용해서 조건 분기에 활용하는 코드.

 

확인 문제

1. 다음 코드가 어떤 형태로 실행되는가?

<script>
    const result = (100 > 200)
     ? prompt('값을 입력해주세요', '')
     : confirm('버튼을 클릭해주세요')
    alert(result)
   </script>
실행결과

2. [누적 예제: 태어난 연도를 입력받아 띠 출력하기] 예제에서 if 조건문을 switch 조건문으로 변경해서 구현하라.

<script>
    const rawInput = prompt('태어난 해를 입력해주세요.', '')
    const year = Number(rawInput)
    const e = year % 12
    let result
    switch (e) {
    case 0: result = '원숭이'; break;
    case 1: result = '닭'; break;
    case 2: result = '개'; break;
    case 3: result = '돼지'; break;
    case 4: result = '쥐'; break;
    case 5: result = '소'; break;
    case 6: result = '호랑이'; break;
    case 7: result = '토끼'; break;
    case 8: result = '용'; break;
    case 9: result = '뱀'; break;
    case 10: result = '말'; break;
    case 11: result = '양'; break;
    }
    alert(`${year}년에 태어났다면 ${result} 띠입니다.`)
   </script>

3. '태어난 연도를 입력받아 띠 출력하기' 예제에서 동물이름을 쥐부터 십이지신으로 변경하고 입력한 연도의 십간을 계산하고, 이 둘을 합쳐 같이 출력하는 프로그램을 만들어라.

<script>
 const rawInput = prompt('태어난 해를 입력해주세요.', '')
 const year = Number(rawInput)
 
 let 간
 let e = year % 10
 if (e === 0) { 간 = '경' }
 else if (e === 1) { 간 = '신' }
 else if (e === 2) { 간 = '임' }
 else if (e === 3) { 간 = '계' }
 else if (e === 4) { 간 = '갑' }
 else if (e === 5) { 간 = '을' }
 else if (e === 6) { 간 = '병' }
 else if (e === 7) { 간 = '정' }
 else if (e === 8) { 간 = '무' }
 else if (e === 9) { 간 = '기' }
 let 띠
 let tti = year % 12
 if (tti === 0) { 띠 = '신' }
 else if (tti === 1) { 띠 = '유' }
 else if (tti === 2) { 띠 = '술' }
 else if (tti === 3) { 띠 = '해' }
 else if (tti === 4) { 띠 = '자' }
 else if (tti === 5) { 띠 = '축' }
 else if (tti === 6) { 띠 = '인' }
 else if (tti === 7) { 띠 = '묘' }
 else if (tti === 8) { 띠 = '진' }
 else if (tti === 9) { 띠 = '사' }
 else if (tti === 10) { 띠 = '오' }
 else if (tti === 11) { 띠 = '미' }
 alert(`${year}년은 ${간}${띠} 년입니다.`)
</script>

4. 다음 중에서 swich 조건문과 직접적인 관련이 없는 키워드를 골라라.

  1. swich
  2. break
  3. default
  4. else       (O)

5. 다음 중에서 다른 실행 결과를 내는 코드는?

  1. true ? alert('출력A') : alert('출력B')
  2. false ? alert('출력B') : alert('출력A')
  3. true | | alert('출력A')
  4. true&&alert('출력A')                             (O)

'개발 공부' 카테고리의 다른 글

혼공스 Chapter.5  (0) 2023.03.09
혼공스 Chapter.4  (0) 2023.03.08
혼공스 Chapter.2  (0) 2023.03.06
혼공스 Chapter.1  (0) 2023.03.06
항해99 웹개발 종합반 1~2주차 강의 요약  (0) 2023.02.16