[Practice 2] 조건문

Strawberry Oolong Tea·2021년 8월 28일
0

TODAY I LEARNED

목록 보기
12/51
post-thumbnail

🏓 PingPong

  • 입력된 수의 나머지 값에 따라 각각에 맞는 메세지를 문자열로 리턴하기
  • 5로 나누어 떨어지면 'Ping'
  • 7로 나누어 떨어지면 'Pong'
  • 5와 7로 모두 나누어 떨어지면 'PingPong'
  • 5와 7로 나누어 떨어지지 않으면 'RingRing'
function pingPong(num) {
  // code
}

💡 Solution

function pingPong(num) {
  if (num % 5 === 0 && num % 7 === 0) {
    return 'PingPong';
  } else if (num % 5 === 0) {
    return 'Ping';
  } else if (num % 7 === 0) {
    return 'Pong';
  } else {
    return 'RingRing';
  }
}

🚌 100명이 정원인 버스

  • 100명이 정원인 버스가 있다.
  • 사람수를 입력받아 해당하는 혼잡도를 문자열로 리턴하기
  • 90 ~ 100명이면 '만원'
  • 80 ~ 89명이면 '혼잡'
  • 70 ~ 79명이면 '보통'
  • 60 ~ 69명이면 '원활'
  • 0 ~ 59명이면 '자리 많음'
  • 주어진 사람 수가 100을 초과하거나 0 미만이면 'INVALID NUMBER'
function degreeOfCrowdedness(numberOfPeople) {
 // code
}

💡 Solution

function degreeOfCrowdedness(numberOfPeople) {
  if (numberOfPeople >= 90) {
    return '만원'
  } else if (numberOfPeople >= 80) {
    return '혼잡'
  } else if (numberOfPeople >= 70) {
    return '보통'
  } else if (numberOfPeople >= 60) {
    return '원활'
  } else {
    return '자리 많음'
  }
}

📚 1년에 읽은 책

  • 1년에 읽은 책의 수를 입력받아 해당하는 메세지를 문자열로 리턴하기
  • 50권 이상이면 '당신은 북 컬렉터'
  • 40권 이상이면 '당신은 북 매니아'
  • 30권 이상이면 '당신은 시니어 북 리더'
  • 20권 이상이면 '당신은 주니어 북 리더'
  • 10권 이상이면 '당신은 비기너 북 리더'
  • 10권 미만이면 '오늘의 Reader는 내일의 Leader'
  • 각 등급의 최대 권수보다 7권 이하인 경우 등급과 함께 '노력하는' 리턴
  • 각 등급의 최대 권수보다 8권 이상인 경우 등급과 함께 '성장하는' 리턴
function countOfBooksForYear(numberOfBooks) {
  // code
}

💡 Solution

function countOfBooksForYearWithExtraMessage(numberOfBooks) {
  let extra = numberOfBooks % 10;
  
  if (extra <= 2) {
    return '노력하는 ';
  } else if (extra >= 8) {
    return '성장하는 ';
  } else {
    return '';
  }
}

function countOfBooksForYear(numberOfBooks) {
  let message;

  if (numberOfBooks >= 50) {
    message = '북 컬렉터';
  } else if (numberOfBooks >= 40) {
    message = '북 매니아';
  } else if (numberOfBooks >= 30) {
    message = '시니어 북 리더';
  } else if (numberOfBooks >= 20) {
    message = '주니어 북 리더';
  } else if (numberOfBooks >= 10) {
    message = '비기너 북 리더';
  }

  if (numberOfBooks >= 10 && numberOfBooks < 50) {
    message = `당신은 ${countOfBooksForYearWithHeart(numberOfBooks)}${message}`;
  } else if (numberOfBooks < 10) {
    message = '오늘의 Reader는 내일의 Leader';
  } else {
    message = `당신은 ${message}`;
  }

  return message;
}

📐 직각삼각형인지 확인하기

  • 삼각형의 세 변의 값을 입력받아 직각삼각형인지 아닌지 Boolean 타입을 리턴
function isRightTriangle(side1, side2, side3) {
  // code
}

💡 Solution

function isRightTriangle(side1, side2, side3) {
  let hypotenuse1 = side1 * side1;
  let hypotenuse2 = side2 ** 2;
  let hypotenuse3 = Math.pow(side3, 2);

  if (hypotenuse1 === hypotenuse2 + hypotenuse3 || hypotenuse2 === hypotenuse1 + hypotenuse3 || hypotenuse3 === hypotenuse1 + hypotenuse2) {
    return true;
  }
  return false;
}

⏰ 1초 느린 시계

  • 시, 분, 초를 입력받아 1초 뒤의 시간을 특정 메세지의 문자열로 리턴
  • '현재 시간은 {}시 {}분 {}초 입니다'
function oneSecondSlowClock(hour, minute, second) {
  // code
}

💡 Solution

function oneSecondSlowClock(hour, minute, second) {
  second += 1;
  if (second >= 59) {
    minute += 1;
    second = 0;
  }
  if (minute >= 59) {
    hour += 1;
    minute = 0;
  }
  if (hour >= 23) {
    hour = 0;
  }
  return `현재 시간은 ${hour}${minute}${second}초 입니다`
}
profile
Der Vogel kämpft sich aus dem Ei 🥚🐣 목표를 위해 끊임없이 자신의 세계를 깨뜨릴 수 있는 용감한 개발자가 되고 싶습니다.

0개의 댓글