두 단어를 입력받아 두 단어의 평균 길이를 내림하여 리턴해야 합니다.
인자 1 : word1
string 타입의 알파벳 문자열
word1.length는 10 이하
인자 2 : word2
string 타입의 알파벳 문자열
word2.length는 10 이하
number 타입을 리턴해야 합니다.
function computeAverageLengthOfWords2(word1, word2) {
// 문제: 두 단어 평균 길이를 내림하여 리턴
// 두 단어 길이 각각 구해 평균값 내기 (word1.length + word2.length) / 2
// 평균값 내림처리 Math.floor()
return Math.floor((word1.length + word2.length) / 2);
}
삼각형의 세 변을 입력받아 직각삼각형(pythagorean)인지 여부를 리턴해야 합니다.
인자 1 : side1
number 타입의 삼각형 한 변 (1 이상의 정수)
인자 1 : side2
number 타입의 삼각형 한 변 (1 이상의 정수)
인자 1 : side3
number 타입의 삼각형 한 변 (1 이상의 정수)
boolean 타입을 리턴해야 합니다.
삼각형의 각 세 변은 무작위로 입력됩니다.
자바스크립트에서 x의 제곱(x squared)을 구하는 방법은 3가지 입니다. 세 가지 방법을 모두 사용해야 합니다.
arr.sort 사용은 금지됩니다.
제곱을 구할 때는 입력으로 주어지는 변수를 그대로 사용해야 합니다.
function isPythagorean(side1, side2, side3) {
// TODO: 여기에 코드를 작성합니다.
let pow1 = side1 * side1;
let pow2 = side2 ** 2;
let pow3 = Math.pow(side3, 2);
if (pow1 > pow2 && pow1 > pow3) {
return pow1 === pow2 + pow3;
} else if (pow2 > pow1 && pow2 > pow3) {
return pow2 === pow1 + pow3;
} else {
return pow3 === pow1 + pow2;
}
}
처음 문제를 봤을 때 조건문 쓰는게 맞나..? 조건문 없이 긴 변을 어떻게 알고 함수를 짜..? (아직 조건문 챕터 들어가기 전)라는 생각이 들었는데, 곰곰히 생각해 보니 단순하게 논리합 연산자를 쓰면 되는거였다.
function isPythagorean(side1, side2, side3) {
// TODO: 여기에 코드를 작성합니다.
let pow1 = side1 * side1;
let pow2 = side2 ** 2;
let pow3 = Math.pow(side3, 2);
return (pow1 + pow2) === pow3 || (pow2 + pow3) === pow1 || (pow1 + pow3) === pow2;
}
수(num)와 문자열을 입력받아 차례대로 num개의 문자로 구성된 문자열을 리턴해야 합니다.
인자 1 : num
number 타입의 정수 (num >= 0)
인자 2 : str
임의의 길이의 문자열
string 타입을 리턴해야 합니다.
num과 str.length 중 더 작은 수만큼 저장(take)합니다.
function takeLetters(num, str) {
// TODO: 여기에 코드를 작성합니다.
return str.substr(0, num); // 0번째 인덱스부터 num개 자르기
}
function takeLetters(num, str) {
return str.slice(0, num); // 0번째 인덱스부터 num 바로 전 인덱스까지 자르기
}
두 개의 문자열을 입력받아 대소문자를 구분하지 않고(case insensitive) 서로 같은지 여부를 리턴해야 합니다.
인자 1 : str1
string 타입의 문자열
인자 2 : str2
string 타입의 문자열
boolean 타입을 리턴해야 합니다.
function compareOnlyAlphabet(str1, str2) {
// TODO: 여기에 코드를 작성합니다.
str1 = str1.toUpperCase(); // 대문자로 리턴
str2 = str2.toUpperCase(); // 대문자로 리턴
return str1 === str2; // 비교하기
}
시간, 분, 초를 입력받아 현재 시각을 나타내는 메세지를 리턴해야 합니다.
인자 1 : hour
number 타입의 시간 (1 이상 12 이하의 정수)
인자 2 : min
number 타입의 분 (0 이상 59 이하의 정수)
인자 3 : sec
number 타입의 초 (0 이상 59 이하의 정수)
string 타입을 리턴해야 합니다.
플러스 연산자(+) 사용은 금지됩니다. ('현재 시각은 ' + hour + '시 ' + min + '분 ' + sec + '초 입니다.')
function showTime(hour, min, sec) {
// TODO: 여기에 코드를 작성합니다.
return `현재 시각은 ${hour}시 ${min}분 ${sec}초 입니다.`
} // 템플릿 리터럴 사용