-
2.22 코플릿 페어과제 조건문코드스테이츠 2023. 2. 23. 03:43
조건문
01_isOldEnoughToDrink
나이를 입력받아 술을 마실 수 있는지(18세 이상) 여부를 리턴해야 합니다.
인자1 age
: number 타입의 나이 (0 이상의 정수)
출력
: boolean 타입을 리턴해야 합니다.
//나이를 입력한다.
//18세이상인지 확인한다.
//18세이상이라면 true를 리턴한다.
//18세 미만이라면 false를 리턴한다.
작성한 오류 코드
function isOldEnoughToDrink(age){
if (18<=age==true)
} else (18>age===false){
return result;
}
function isOldEnoughToDrink(age) { if (age >= 18) { return true; } else { return false; } }
02_fizzBuzz
수를 입력받아 3 그리고 5로 각각 나눈 뒤 나머지 값에 따라 알맞은 메시지를 리턴해야 합니다.
인자 1 : num
: number 타입의 정수 (num >= 1)
출력
- string 타입을 리턴해야 합니다.
- 3으로 나누어 떨어지는 경우, 'Fizz'를 리턴해야 합니다.
- 5으로 나누어 떨어지는 경우, 'Buzz'를 리턴해야 합니다.
- 3과 5로 모두 나누어 떨어지는 경우, 'FizzBuzz'를 리턴해야 합니다.
- 3이나 5로 나누어 떨어지지 않는 경우, 'No FizzBuzz'를 리턴해야 합니다.
//string 타입 인간의 언어, 자연어를 JavaScript에서 표현하기 위한 데이터 타입입니다.
따옴표(’), 쌍따옴표(”), 백틱(`)으로 감싸면 됩니다.
//num%3===0 이면
//return 'Fizz'
//num%5===0
//return 'Buzz'
//num%3===0 && num%5===0 모두 해당되야함 1순위
//return 'FizzBuzz'
//else 3이나 5로 나누어 떨어지지 않는 경우 서술하지 않아도 됨
//return 'No FizzBuzz'
function fizzBuzz(num) { if ( num%3===0 && num%5===0 ){ return 'FizzBuzz' } else if ( num%3===0 ){ return 'Fizz' } else if ( num%5===0 ){ return 'Buzz' } else { return 'No FizzBuzz' } }
03_miniCalculator
두 개의 수와 기호를 입력받아 알맞게 계산한 값을 리턴해야 합니다.
인자 1 : num1
: number 타입의 정수
인자 2 : num2
: number 타입의 정수
인자 3 : operator
: string 타입의 기호 ('+', '-', '*', '/')
출력
: number 타입을 리턴해야 합니다.
//num1+num2='+'
//num1-num2='-'
//num1*num2='*'
//num1/num2='/'
//기호 역할을 정의해줌
//연산자 +면 num1+num2 리턴
작성한 오류 코드
function miniCalculator(num1, num2, operator) {
if (num1+num2){return (num1+num2='+')} else if (num1-num2){return (num1-num2='-')} else if (num1*num2){return (num1*num2='*')} else {return (num1/num2='/')}function miniCalculator(num1, num2, operator) { if(operator==='+'){ return num1 + num2; } else if (operator ==='-'){ return num1 - num2; } else if (operator ==='*'){ return num1 * num2; } else { return num1 / num2; } }
04_convertScoreToGrade
점수를 입력받아 점수에 해당하는 등급을 리턴해야 합니다.
인자 1 : score
: number 타입의 정수
출력
- string 타입을 리턴해야 합니다.
- (100 - 90) --> 'A'
- (89 - 80) --> 'B'
- (79 - 70) --> 'C'
- (69 - 60) --> 'D'
- (59 - 0) --> 'F'
주의 사항
- 만약 주어진 점수가 100을 초과하거나 0 미만이라면 문자열 INVALID SCORE를 리턴해야 합니다.
힌트
- 자바스크립트(를 포함한 거의 대부분의 프로그래밍 언어)의 비교 연산자는 이항 연산자(binary operator)입니다.
- 이항 연산자는 2개의 대상에 대해서만 연산을 수행합니다.
- 70 < score < 80 와 같은 표현은 보이는 대로 작동하지 않습니다.
- 연산자 우선 순위를 검색해 봅니다. (js operator precedence 또는 자바스크립트 연산자 우선순위)
- 연산자 우선 순위를 암기해서 쓰기보다는 괄호를 적절하게 사용하는 것이 더 중요합니다.
//점수를 입력한다
//점수에 맞는 등급을로 리턴한다.
//<주의사항> 100<score || 0>score 둘 중 하나여도 true
//return 'INVALID SCORE'
// score>=90
//return 'a'
function convertScoreToGrade(score) { if (100<score || 0>score) { return 'INVALID SCORE'; } else if (score>=90) { return 'A'; } else if (score>=80) { return 'B'; } else if (score>=70) { return 'C'; } else if (score>=60) { return 'D'; } else { return 'F'; } }
05_checkAge
이름과 나이를 입력받아 나이별로 다른 메시지를 리턴해야 합니다.
인자 1 : name
: string 타입의 알파벳 문자열
: name.length는 10 이하
인자 2 : age
: number 타입의 나이 (0보다 크고 100보다 작은 자연수)
출력
- string 타입을 리턴해야 합니다.
- 이름이 Adrian이고, 나이가 21살 이상이면, Welcome, Adrian! 을 리턴해야 합니다
- 이름이 John이고, 만일 21살보다 적으면, Go home, John!을 리턴해야 합니다.
힌트
- 쉼표와 공백, 느낌표까지 정확히 리턴해야 합니다.
- 두 값을 비교할 때는 비교 연산자(<, >, === 등)를 사용합니다.
// 21살 이상이면 21<=age// return 'Welcome ${name}'// 21살 미만이면 21>age// return 'Go home, ${name}'function checkAge(name, age) { if (21<=age) { return 'Welcome, ${name}!' } else { return 'Go home, ${name}!' } }
06_(advanced)convertScoreToGradeWithPlusAndMinus
점수를 입력받아 점수에 해당하는 등급을 리턴해야 합니다.
인자 1 : score
: number 타입의 정수
출력
- string 타입을 리턴해야 합니다.
- 각 등급의 최저 점수는 아래와 같습니다. ('F'의 경우 최대 점수를 표기)
- 90 이상 --> 'A'
- 80 이상 --> 'B'
- 70 이상 --> 'C'
- 60 이상 --> 'D'
- 60 미만 --> 'F'
주의사항
- 만약 주어진 점수가 100을 초과하거나 0 미만인 경우, 문자열 'INVALID SCORE'를 리턴해야 합니다.
- 각 등급의 최고 점수보다 7점 이하인 경우, 등급과 함께 '-'를 리턴해야 합니다. (단, 93점의 경우에는 A를 리턴해야 합니다.)
- 각 등급의 최저 점수보다 8점 이상인 경우, 등급과 함께 '+'를 리턴해야 합니다.
- F+ 와 F- 는 존재하지 않습니다.
//점수에 맞는 값으로 리턴한다
//<주의사항> 100<score 0>score 'INVALID SCORE'를 리턴 1순위
//90<='A' 4순위
//93>= 'A-' && 90<='A-' 2순위
//98<='A+'&&100>='A+' 2순위
//
If (100<score || 0>score) {
return 'INVALID SCORE'
} else if (98<=score && 100>=score) {
Return 'A+'
} else if (93>=score && 90<=score) {
Return 'A-'
} else if (90<=score) {
Return 'A'
}
하루종일 페어과제로 문제만 푸는것도 보통일이 아니었다.
풀어보니 함수부분 학습이 부족했던거 같고
내일 페어과제는 어떻게 할지 걱정된다
'코드스테이츠' 카테고리의 다른 글
2.24 Linux 기초 (0) 2023.02.25 2.23 JavaScript 계산기 (0) 2023.02.24 2.21 JavaScript 함수 (0) 2023.02.23 2.21 JavaScript 반복문 for문 while문 (1) 2023.02.22 2.21 JavaScript 조건문 else문 (0) 2023.02.22