Menu
CoddyTech

Tantangan: cari hasil kali

Termasuk bagian Dasar-Dasar dalam perjalanan Dart di Coddy. Pelajaran 94 dari 94.

challenge icon

Tantangan

Mudah

Dalam tantangan ini, kamu akan berlatih menggunakan method find dengan list untuk menemukan item tertentu berdasarkan kondisi.

Kamu memiliki list produk di keranjang belanja, yang direpresentasikan sebagai map dengan nama, harga, dan jumlah. Tugasmu adalah melengkapi fungsi findProduct yang mencari produk berdasarkan nama di keranjang.

Fungsi tersebut harus mengembalikan produk pertama yang cocok dengan nama yang diberikan, atau null jika tidak ditemukan kecocokan.

Lengkapi kode untuk menerapkan fungsi pencarian ini dengan benar.

Coba sendiri

void main() {
  // Keranjang belanja berisi produk
  List<Map<String, dynamic>> shoppingCart = [
    {'name': 'Laptop', 'price': 999.99, 'quantity': 1},
    {'name': 'Headphones', 'price': 59.99, 'quantity': 2},
    {'name': 'Mouse', 'price': 24.99, 'quantity': 1},
    {'name': 'Keyboard', 'price': 49.99, 'quantity': 1}
  ];
  
  // Uji fungsi findProduct
  Map<String, dynamic>? foundProduct = findProduct(shoppingCart, 'Headphones');
  if (foundProduct != null) {
    print('Found: ${foundProduct['name']} - \$${foundProduct['price']} (Quantity: ${foundProduct['quantity']})');
  } else {
    print('Product not found');
  }
  
  // Uji dengan produk yang tidak ada
  foundProduct = findProduct(shoppingCart, 'Monitor');
  if (foundProduct != null) {
    print('Found: ${foundProduct['name']} - \$${foundProduct['price']} (Quantity: ${foundProduct['quantity']})');
  } else {
    print('Product not found');
  }
}

// TODO: Lengkapi fungsi ini untuk mencari produk berdasarkan nama
Map<String, dynamic>? findProduct(List<Map<String, dynamic>> cart, String productName) {
  // TODO: Telusuri keranjang dengan perulangan dan kembalikan produk pertama yang cocok dengan productName
  // TODO: Kembalikan null jika tidak ada produk yang cocok
  
}

Semua pelajaran di Dasar-Dasar

Latihan sendiri: Compiler Dart online