var menu1: [String: Double] = ["家用品1": 10.0, "家用品2": 15.0, "家用品3": 20.0]
var menu2: [String: Double] = ["食品1": 5.0, "食品2": 8.0, "食品3": 12.0]
var menu3: [String: Double] = ["办公用品1": 3.0, "办公用品2": 6.0, "办公用品3": 9.0]
var mymenu: [String: Int] = [:]
while true {
print("请输入'y'退出循环,其他任意字符继续:")
let user = readLine() ?? ""
if user == "y" {
break
}
print("菜单1:家用品")
for (key,value) in menu1{
print("\(key):\(value)")
}
print("菜单2:食品")
for (key,value) in menu2{
print("\(value)")
}
print("菜单3:办公用品")
for (key,value) in menu3{
print("\(value)")
}
print("请输入菜单类型(1:家用品、2:食品、3:办公用品):")
let choice = Int(readLine() ?? "") ?? 0
var selectedMenu: [String: Double] = [:]
switch choice {
case 1:
selectedMenu = menu1
case 2:
selectedMenu = menu2
case 3:
selectedMenu = menu3
default:
print("无效的菜单类型")
continue
}
print("商品规格:")
for (index, item) in selectedMenu.enumerated() {
print("\(index + 1): \(item.key) - ¥\(item.value)")
}
print("请输入商品名称:")
let itemName = readLine() ?? ""
print("请输入购买数量:")
let numb = Int(readLine() ?? "") ?? 0
mymenu[itemName] = numb
}
print("-------- 小票 --------")
print("名称\t数量\t*\t单价\t=\t价格")
print("----------------------")
var totalPrice: Double = 0.0
for (item, quantity) in mymenu {
if let price = menu1[item] ?? menu2[item] ?? menu3[item] {
let itemPrice = price * Double(quantity)
print("\(item)\t\(quantity)\t*\t\(price)\t=\t\(itemPrice)")
totalPrice += itemPrice
}
}
print("----------------------")
print("总价:¥\(totalPrice)")
print("感谢您的购买!")