Menu
Coddy logo textTech

무엇을 살까

Coddy Swift 여정의 기초 섹션에 포함된 레슨 — 86개 중 86번째.

challenge icon

챌린지

쉬움

itemNames, itemPrices, 그리고 budget을 매개변수로 받아 예산 내에서 구매할 수 있는 아이템 이름의 배열을 반환하는 whatToBuy 함수를 작성하세요.

아이템을 순서대로 반복하며 확인합니다. 각 아이템에 대해, 해당 아이템의 가격을 현재 합계에 더했을 때 예산 내에 있는지 확인합니다. 만약 그렇다면, 아이템 이름을 쇼핑 리스트에 추가하고 합계를 업데이트합니다. 만약 어떤 아이템이 예산을 초과하게 만든다면, 해당 아이템은 건너뛰고 나머지 아이템들을 계속해서 확인합니다.

로직:

  1. 현재 합계 0.0과 빈 결과 배열로 시작합니다.
  2. 인덱스를 사용하여 각 아이템을 루프(loop)로 돕니다.
  3. 현재 합계에 현재 아이템의 가격을 더한 값이 예산보다 작거나 같다면, 아이템 이름을 결과에 추가하고 현재 합계를 업데이트합니다.
  4. 아이템을 추가했을 때 예산을 초과한다면, 해당 아이템은 건너뛰고 다음 아이템으로 진행합니다.
  5. 예산 내에서 구매 가능한 아이템 이름의 배열을 반환합니다.

매개변수:

  • itemNames ([String]): 아이템 이름 배열
  • itemPrices ([Double]): 해당 아이템들의 가격 배열 (itemNames와 길이가 같음)
  • budget (Double): 지출 가능한 최대 금액

반환값: 예산 내에서 구매 가능한 아이템 이름들이 나타난 순서대로 담긴 배열 ([String])

예시:

// itemNames: ["Apple", "Bread", "Milk"]
// itemPrices: [2.0, 3.5, 4.0]
// budget: 6.0
// Result: ["Apple", "Bread"]
// (Apple은 2.0, Bread는 3.5이며, 합계는 5.5로 예산 내에 있습니다)
// (Milk를 더하면 합계가 9.5가 되어 6.0을 초과하므로 건너뜁니다)

직접 해보기

func whatToBuy(itemNames: [String], itemPrices: [Double], budget: Double) -> [String] {
    // 여기에 코드를 작성하세요
}

기초의 모든 레슨