Menu
CoddyTech

Apa yang Harus Dibeli

Termasuk bagian Dasar-Dasar dalam perjalanan Swift di Coddy. Pelajaran 86 dari 86.

challenge icon

Tantangan

Mudah
Tulis fungsi whatToBuy yang menerima itemNames, itemPrices, dan budget, lalu mengembalikan array nama barang yang bisa dibeli sesuai anggaran.

Telusuri barang-barang sesuai urutan. Untuk setiap barang, periksa apakah menambahkan harganya ke total sementara tidak akan melebihi anggaran. Jika ya, tambahkan nama barang ke daftar belanja dan perbarui totalnya. Jika harga suatu barang akan melebihi anggaran, lewati barang itu dan lanjutkan memeriksa barang-barang lainnya.

Logika:

  1. Mulai dengan total sementara 0.0 dan array hasil yang kosong
  2. Lakukan perulangan pada setiap barang berdasarkan indeks
  3. Jika total sementara ditambah harga barang saat ini kurang dari atau sama dengan anggaran, tambahkan nama barang ke hasil dan perbarui total sementara
  4. Jika menambahkan barang akan melebihi anggaran, lewati barang itu dan lanjutkan ke barang berikutnya
  5. Kembalikan array nama barang yang sesuai anggaran

Parameter:

  • itemNames ([String]): Array nama barang
  • itemPrices ([Double]): Array harga yang sesuai (panjangnya sama dengan itemNames)
  • budget (Double): Jumlah maksimum yang bisa dibelanjakan

Nilai yang dikembalikan: Array nama barang yang bisa dibeli sesuai anggaran, berdasarkan urutan kemunculannya ([String])

Contoh:

// itemNames: ["Apple", "Bread", "Milk"]
// itemPrices: [2.0, 3.5, 4.0]
// budget: 6.0
// Result: ["Apple", "Bread"]
// (Apple costs 2.0, Bread costs 3.5, total is 5.5 which is within budget)
// (Milk would make total 9.5, which exceeds 6.0, so it's skipped)

Coba sendiri

func whatToBuy(itemNames: [String], itemPrices: [Double], budget: Double) -> [String] {
    // Tulis kodemu di sini
}

Semua pelajaran di Dasar-Dasar

Latihan sendiri: Playground Swift