Menu
CoddyTech

אתגר: מציאת מכפלה

חלק מהיחידה יסודות במסלול ה-Dart של Coddy. שיעור 94 מתוך 94.

challenge icon

אתגר

קל

באתגר הזה תתרגלו מעבר בלולאה על רשימה כדי לאתר את הפריט הראשון שעונה על תנאי.

יש לכם רשימה של מוצרים בעגלת קניות, המיוצגים כמפות עם שם, מחיר וכמות. עליכם להשלים את הפונקציה findProduct, שמחפשת מוצר בעגלה לפי שם.

הפונקציה צריכה להחזיר את המוצר הראשון שתואם לשם הנתון, או null אם לא נמצאה התאמה.

השלימו את הקוד כדי לממש כראוי את פונקציונליות החיפוש הזו.

נסו בעצמכם

void main() {
  // עגלת קניות עם מוצרים
  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}
  ];
  
  // בדקו את הפונקציה 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');
  }
  
  // בדקו עם מוצר שאינו קיים
  foundProduct = findProduct(shoppingCart, 'Monitor');
  if (foundProduct != null) {
    print('Found: ${foundProduct['name']} - \$${foundProduct['price']} (Quantity: ${foundProduct['quantity']})');
  } else {
    print('Product not found');
  }
}

// TODO: השלימו את הפונקציה הזו כך שתמצא מוצר לפי שם
Map<String, dynamic>? findProduct(List<Map<String, dynamic>> cart, String productName) {
  // TODO: עברו על העגלה והחזירו את המוצר הראשון שתואם ל-productName
  // TODO: החזירו null אם לא נמצא מוצר תואם
  
}

כל השיעורים ביחידה יסודות

תרגלו בעצמכם: קומפיילר Dart אונליין