Menu
Coddy logo textTech

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

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

challenge icon

אתגר

קל

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

יש לכם רשימת מוצרים בעגלת קניות, המיוצגים כמפות עם שם, מחיר וכמות. המשימה שלכם היא להשלים את הפונקציה 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 אונליין