基于C#的餐厅点餐系统的设计与实现
发布人:shili8
发布时间:2023-07-01 10:06
阅读次数:69
以下是一个基于C#的餐厅点餐系统的设计与实现的示例代码和代码注释:
csharp using System; using System.Collections.Generic; // 菜品类 public class Dish { public string Name { get; set; } public double Price { get; set; } } // 订单类 public class Order { public int TableNumber { get; set; } public ListDishes { get; set; } public double TotalPrice { get; set; } } // 餐厅类 public class Restaurant { private List menu; // 菜单 private List orders; // 订单列表 public Restaurant() { menu = new List (); orders = new List (); } // 添加菜品到菜单 public void AddDishToMenu(Dish dish) { menu.Add(dish); } // 显示菜单 public void DisplayMenu() { Console.WriteLine(Menu:); foreach (Dish dish in menu) { Console.WriteLine(${dish.Name} - ${dish.Price}); } } // 下订单 public void PlaceOrder(Order order) { // 计算订单总价 double totalPrice = 0; foreach (Dish dish in order.Dishes) { totalPrice += dish.Price; } order.TotalPrice = totalPrice; // 添加订单到订单列表 orders.Add(order); Console.WriteLine($Order placed for table {order.TableNumber}. Total price: ${order.TotalPrice}); } // 显示订单列表 public void DisplayOrders() { Console.WriteLine(Orders:); foreach (Order order in orders) { Console.WriteLine($Table {order.TableNumber}: ${order.TotalPrice}); } } } public class Program { public static void Main(string[] args) { // 创建餐厅对象 Restaurant restaurant = new Restaurant(); // 添加菜品到菜单 Dish dish1 = new Dish { Name = Steak Price = 20 }; Dish dish2 = new Dish { Name = Salad Price = 10 }; Dish dish3 = new Dish { Name = Soup Price = 8 }; restaurant.AddDishToMenu(dish1); restaurant.AddDishToMenu(dish2); restaurant.AddDishToMenu(dish3); // 显示菜单 restaurant.DisplayMenu(); // 下订单 Order order1 = new Order { TableNumber = 1 Dishes = new List { dish1 dish2 } }; Order order2 = new Order { TableNumber = 2 Dishes = new List { dish3 } }; restaurant.PlaceOrder(order1); restaurant.PlaceOrder(order2); // 显示订单列表 restaurant.DisplayOrders(); } }
这个示例代码实现了一个简单的餐厅点餐系统。餐厅类`Restaurant`包含了菜单和订单列表,可以添加菜品到菜单、显示菜单、下订单和显示订单列表等功能。菜品类`Dish`包含了菜品的名称和价格。订单类`Order`包含了桌号、菜品列表和总价。在`Main`方法中,我们创建了一个餐厅对象,添加了几个菜品到菜单,然后下了两个订单,并显示了菜单和订单列表。
请注意,这只是一个简单的示例,实际的餐厅点餐系统可能需要更多的功能和复杂性。