func getInput(message: String) -> String? {
print(message, terminator: ": ");
return readLine()
}
func getInputInt(message: String) -> Int? {
if let inputString = getInput(message: message) {
return Int(inputString)
} else {
return nil
}
}
// kelas makanan berat
enum MainCourse: Int, CaseIterable {
case nasiGoreng = 1, indomie, magelangan, nasiBakar, ayamPenyet
}
// kelas makanan ringan
enum Appetizer: Int, CaseIterable {
case ikan = 1, telur, tempe, tahu, kerupuk
}
// kelas minuman
enum Beverage: Int, CaseIterable {
case esTeh = 1, esJeruk, esKopi, esKosong, airMineral
}
func showMain() {
var posisi = 1
print("Menu Makanan")
for heavy in MainCourse.allCases {
print("[\(posisi)] \(heavy)")
posisi += 1
}
}
func showTambahan() {
var posisi = 1
print("Menu Tambahan")
for sides in Appetizer.allCases {
print("[\(posisi)] \(sides)")
posisi += 1
}
}
func showDrinks() {
var posisi = 1
print("Menu Minuman")
for minum in Beverage.allCases {
print("[\(posisi)] \(minum)")
posisi += 1
}
}
var total = 0
var item = ("", "", "")
func inputMeal() {
if let posisi = getInputInt(message: "Pilihlah Menu Makanan") {
if let heavyMeal = MainCourse(rawValue: posisi) {
switch heavyMeal {
case .nasiGoreng:
total += 11000
item.0 = "Nasi Goreng"
case .indomie:
total += 6000
item.0 = "Indomie"
case .magelangan:
total += 9000
item.0 = "Magelangan"
case .nasiBakar:
total += 13000
item.0 = "Nasi Bakar"
case .ayamPenyet:
total += 14000
item.0 = "Ayam Penyet"
}
} else {
print("Posisi: \(posisi), tidak ditemukan")
}
} else {
print("Input tidak valid")
}
}