나이를 입력받아 술을 마실 수 있는지(18세 이상) 여부를 리턴해야 한다.
내 답안:
function isOldEnoughToDrink(age) {
let adult;
if (age >= 18) {
return true;
}
else {
return false;
}
}
/*
의사 코드
1. 18세 이상인가?
2. "18세 이상입니다."
출력: true "술을 마실 수 있습니다."
*/
피드백: return 사용.
return을 쓰지 않고, console.log()를 작성해서 테스트 실행을 눌렀다.
console.log()는 개발자 도구 콘솔이나, 터미널에 원하는 값을 출력할 수 있게 돕는 method 이다.
코드의 결과값을 확인하거나, 디버깅(에러 확인)할 때 사용한다.
프로그래밍 실행은 return 임을 기억하자.
숫자를 입력받아 3, 5로 각각 나눈 나머지 값에 따라 알맞은 메시지 리턴해야 한다.
내 답안:
function fizzBuzz(num) {
let str;
if (num % 3 === 0 && num % 5 === 0) {
return str = "FizzBuzz";
}
else if (num % 3 === 0) {
return str = "Fizz";
}
else if (num % 5 === 0) {
return str = "Buzz";
}
else {
return str = "No FizzBuzz";
}
}
/*
의사 코드
3으로 나누어 떨어지는 경우, 'Fizz'를 리턴 => if
5으로 나누어 떨어지는 경우, 'Buzz'를 리턴 => else if
3과 5로 모두 나누어 떨어지는 경우, 'FizzBuzz'를 리턴 => else if
3이나 5로 나누어 떨어지지 않는 경우, 'No FizzBuzz'를 리턴 => else
*/
피드백:
실수 => num % 3을 if에 사용하고, (num % 3 === 0 && num % 5 === 0)을 else if에 사용했다.
num % 3을 if(가장 첫 조건문)에 사용한다면,
입력값이 15라면, 첫 조건문인 num % 3에서 "Fizz"라고 작성하고 종료될 것이다.
하지만, 문제에서 제시한 출력값은 3과 5로 동시에 나누어지고 나머지가 0 일때는, "FizzBuzz"를 리턴하는 것이다.
따라서, (num % 3 === 0 && num % 5 === 0)를 가장 앞에 사용해야 모든 결과값을 출력할 수 있었다.
두 개의 수와 기호를 입력받아 알맞게 계산한 값을 리턴해야 합니다.
내 답안:
function miniCalculator(num1, num2, operator) {
if (operator === '+') {
return num1 + num2;
}
else if (operator === '-') {
return num1 - num2;
}
else if (operator === '*') {
return num1 * num2;
}
else if (operator === '/') {
return num1 / num2;
}
else {
return "사칙연산이 아닙니다.";
}
/*
의사코드
if 더하기
else if 빼기
else if 곱하기
else if 나누기
else operator 가 잘못 되었다.
return = num1 operator num2의 값
*/
}
피드백:
실수 => = 과 === 를 혼동해서 사용했다.
'=' -> 할당
'===' -> 같다(일치 비교 연산자)
같은 실수를 반복하지 말자.
컴퓨터가 올바르게 동작하기 위해서는 기본 문법을 엄수해서 명령어를 전달해야 한다.