while (true) { if (employees.All(e => e.IsBusy)) { Console.WriteLine("Üzgünüz, tüm kasiyerler ve baristalar meşgul. Lütfen sonra tekrar deneyin."); continue; } Console.WriteLine("Siparişinizi girin (çıkmak için 'exit'):"); string orderName = Console.ReadLine(); if (orderName == "exit") break; var order = menuItems.FirstOrDefault(coffee => coffee.Name == orderName); if (order == null) { Console.WriteLine("Geçersiz sipariş, lütfen tekrar deneyin."); continue; } Console.WriteLine("Ek malzeme olarak ne istersiniz?"); string indigrentName = Console.ReadLine(); if (order.Syrups.Contains(indigrentName)) { order.AddExtraFlavor(indigrentName); Console.WriteLine($"Ek malzeme olarak {indigrentName} eklendi."); } else { Console.WriteLine("Geçersiz malzeme, lütfen tekrar deneyin."); continue; } var availableCashier = employees.OfType().FirstOrDefault(e => !e.IsBusy); if (availableCashier != null) { availableCashier.TakeOrder(order); if (employees.OfType().All(e => e.IsBusy)) { Console.WriteLine("Baristalar şu anda meşgul, siparişinizi en kısa sürede hazırlayacaklar."); } else { var availableBarista = employees.OfType().FirstOrDefault(e => !e.IsBusy); availableBarista.ProcessOrder(order); } } }