[221104] 알고리즘 수업_조건문, 반복문(2)

yeni·2022년 11월 4일
0

💯 연습문제 풀어보기

1) 점수에 따른 등급

문제 설명

입력되는 score에 따라 알맞은 등급을 적어야 합니다.

100~90 → "A"

89~80 → "B"

79~70 → "C"

69~60 → "D"

59점 이하는 "F"

100점 초과나 0점 미만은 "잘못된 점수입니다"라는 문구를 띄워주세요.
입력 인자

  • score - 숫자열

예상 결과

grade(105)  // "잘못된 점수입니다"
grade(-10)  // "잘못된 점수입니다"
grade(97)   // "A"
grade(86)   // "B"
grade(75)   // "C"
grade(66)   // "D"
grade(52)   // "F"

문제 풀이

// 041 점수에 따른 등급

function grade(score) {
  if (score > 100 || score < 0) {
    return "잘못된 점수입니다.";
  } 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";
  }
}

2) 마이페이지

문제 설명

const myShopping = [
		{ category: "과일", price: 12000 },
		{ category: "의류", price:10000  },
		{ category: "의류", price: 20000 },
		{ category: "장난감", price: 9000 },
		{ category: "과일", price: 5000  },
		{ category: "의류", price: 10000  },
		{ category: "과일", price: 8000  },
		{ category: "의류", price: 7000  },
		{ category: "장난감", price: 5000  },
		{ category: "의류", price: 10000  },
]

위의 myShooping은 내가 구매한 목록을 보여주고 있습니다.

해당 목록에서 "의류"를 구매한 횟수와 총 금액을 나타내고,

"의류"를 구매한 횟수에 따라 등급을 나타내세요.

등급표
"0~2" ⇒ Bronze

"3~4" ⇒ Silver

5이상 ⇒ Gold

입력 인자

  • X

주의 사항

  • 반복문을 통해 문제를 풀어야 합니다.
  • myShopping 내용을 직접 수정하면 안 됩니다.
  • 예상 결과에 나온 문구와 형식이 같아야 합니다.

예상 결과
의류를 구매한 횟수는 총 5회 금액은 57000원이며 등급은 Gold입니다.

문제 풀이

// 043 마이페이지
function myPage() {
  const myShopping = [
    { category: "과일", price: 12000 },
    { category: "의류", price: 10000 },
    { category: "의류", price: 20000 },
    { category: "장난감", price: 9000 },
    { category: "과일", price: 5000 },
    { category: "의류", price: 10000 },
    { category: "과일", price: 8000 },
    { category: "의류", price: 7000 },
    { category: "장난감", price: 5000 },
    { category: "의류", price: 10000 },
  ];

  let count = 0;
  let total = 0;
  let grade = "";

  for (let i = 0; i < myShopping.length; i++) {
    if (myShopping[i].category === "의류") {
      count++;
      total += myShopping[i].price;
    }
  }

  if (count >= 0 && count <= 2) {
    grade = "Bronze";
  } else if (count >= 3 && count <= 4) {
    grade = "Sliver";
  } else if (count >= 5) {
    grade = "Gold";
  }

  return `의류를 구매한 횟수는 총 ${count}회 금액은 ${total}원이며 등급은 ${grade}입니다`;
}
profile
차곡차곡 쌓는 몌으니 개발노트

0개의 댓글