TIL
[20221108] 자바스크립트 if, switch 조건문 (feat. 항해99 프리온보딩 2일차)
youjeong_choi
2022. 11. 7. 23:02
if 조건문 - 혼공스 연습문제
1. 사용자에게 숫자를 입력받아 양수, 0, 음수를 구분하는 프로그램을 만들기(p 140)
<script>
const a = Number(prompt('숫자를 입력해주세요.', ''))
if (a>0) {
alert("양수입니다.")
} else if (a===0) {
alert("0입니다.")
} else {
alert("음수입니다.")
}
</script>
2. 사용자에게 숫자를 입력받아 홀수와 짝수를 구분하는 프로그램 만들기(p 140)
<script>
const a = Number(prompt('숫자를 입력해주세요.', ''))
if (a%2 === 0) {
alert("짝수입니다.")
} else {
alert("홀수입니다.")
}
</script>
3. 현재가 몇 월인지 확인하고, 계절을 구분하는 프로그램 만들기
<script>
const a = Number(prompt('월을 입력해주세요.', ''))
if (3 <= a && a < 6) {
alert("봄입니다.")
} else if (6 <= a && a < 9) {
alert("여름입니다.")
} else if (9 <= a && a < 12) {
alert("가을입니다.")
} else {
alert("겨울입니다.")
}
</script>
위의 문제에서 조건을 쓸 때 "3 <= a < 6"으로 쓰게 되면 두 가지 조건이 중첩되어서 맞지 않다. 위와 같이 && 논리연산자를 써줘야한다.
switch 조건문 - 혼공스 연습문제
범위를 조건으로 가지는 if 조건문과 달리 switch 조건문은 특정 값의 조건을 비교할 때 사용한다. switch 조건문의 괄호 안에는 비교할 값을 입력하고, 이때 입력한 표현식과 case 키워드 옆의 표현식이 같다면 case 키워드 바로 다음에 오는 문장을 실행한다.
1. 태어난 연도를 입력받아 띠 출력하기(switch 조건문 활용)
<script>
const year = Number(prompt('태어난 해를 입력해주세요.', ''))
const tti = '원숭이,닭,개,돼지,쥐,소,호랑이,토끼,용,뱀,말,양'.split(',')
let result = ''
for (i = 0; i < 12; i++)
switch (year % 12) {
case i:
result = tti[year % 12]
alert(`${year}년에 태어났다면 ${result} 띠입니다.`)
break
}
</script>
for문을 활용하여 반복되는 부분이 적도록 해보았다.
2. 태어난 연도를 입력받아 간, 띠로 전환하여 알려주기
<script>
const rawInput = prompt('태어난 해를 입력해주세요.', '')
const year = Number(rawInput)
const tti = '신,유,술,해,자,축,인,묘,진,사,오,미'.split(',')
const gan = '경,신,임,계,갑,을,병,정,무,기'.split(',')
alert(`${year}년은 ${gan[year % 10]}${tti[year % 12]}년입니다.`)
</script>
간은 연도를 10으로 나눈 나머지로 판단하고, 띠는 12로 나눈 나머지로 판단!