IOS [ Swift ]
23.07.24 팀 프로젝트 - 쉑쉑버거 메뉴판 / 제품 구매 코드짜기
oong2
2023. 7. 25. 23:14
쉑쉑버거의 메뉴판을 만들고 , 제품을 구매하기위해 돈을 지불하며 금액이 차감되는 기능을 구현하였다.
처음엔 if 문을 사용하여
만약 1번을 누르면 > 1번메뉴로가고
그게아니라 2번을누르면 > 2번메뉴로가고
이런식으로 코드를짰었지만
뭔가 switch문이 더 범용성측면에서도좋고 나중을 생각해서도 좋을거라생각해서 전부다 갈아엎었다.
그러나 switch문을 사용하면서 if문에서는 안보였던 문제점이 보여 수정해야할것같다.
let out = "프로그램을 종료합니다."
print(menu)
let menu = """
==================================================
아래 메뉴판을 보시고 메뉴를 골라 입력해주세요.
[ SHAKESHACK MENU ]
1. Burgers | 앵거스 비프 통살을 다져만든 버거
2. Frozen Custard | 매장에서 신선하게 만드는 아이스크림
3. Drinks | 매장에서 직접 만드는 음료
4. Beer | 뉴욕 브루클린 브루어리에서 양조한 맥주
0. 종료 | 프로그램 종료
==================================================
"""
let burger = """
[ Burgers MENU ]
1. ShackBurger | W 6.9 | 토마토, 양상추, 쉑소스가 토핑된 치즈버거
2. SmokeShack | W 8.9 | 베이컨, 체리 페퍼에 쉑소스가 토핑된 치즈버거
3. Shroom Burger | W 9.4 | 몬스터 치즈와 체다 치즈로 속을 채운 베지테리안 버거
4. Cheeseburger | W 6.9 | 포테이토 번과 비프패티, 치즈가 토핑된 치즈버거
5. Hamburger | W 5.4 | 비프패티를 기반으로 야채가 들어간 기본버거
0. 뒤로가기 | 뒤로가기
"""
let icecream = """
[ Frozen Custard MENU]
1. Choco Icecream ㅣ W 5.0 ㅣ 쉑쉑버거만의 카카오 공법으로 만든 초코아이스크림
2. Vanila Icecream. ㅣ W 5.0 ㅣ 쉑쉑버거의 시그니처 바닐라쉐이크 아이스크림
3. Strrawberry Icecream ㅣ W 5.5 ㅣ 제철 딸기의 상큼함을 담은 딸기아이스크림
4. Blueberry Icecream. ㅣ W 5.5 ㅣ 마니아층이 두터운 블루베리 아이스크림
0. 뒤로가기. ㅣ 뒤로가기
"""
let drinks = """
[ Drinks MENU ]
1. Vanila Shake ㅣ W 5.0 ㅣ 밀크쉐이크에 바닐라향이 첨가된 별미 메뉴
2. Choco Shake ㅣ W 5.0 ㅣ 초코의 진한 풍미를 느낄 수 있는 메뉴
3. Milk Shake ㅣ W 5.0 ㅣ 연간 100만개씩 판매되는 베스트셀러 !
"""
let burgerprice: [String] = ["6900","8900","9400","6900","5400"]
let shackburger = "쉑 버거를 선택하셨습니다.\(burgerprice[0])원을 결제 하시겠습니까?"
let smokeburger = "스모크 버거를 선택하셨습니다.\(burgerprice[1])원을 결제 하시겠습니까?"
let shroomburger = "슈룸 버거를 선택하셨습니다.\(burgerprice[2])원을 결제 하시겠습니까?"
let cheeseburger = "치즈 버거를 선택하셨습니다.\(burgerprice[3])원을 결제 하시겠습니까?"
let hamburger = "햄버거를 선택하셨습니다.\(burgerprice[4])원을 결제 하시겠습니까?"
let icecreamprice: [String] = ["5000","5500"]
let chocoicecream = "초코 아이스크림을 선택하셨습니다. \(icecreamprice[0])원을 결제 하시겠습니까?"
let vanilaicecream = "바닐라 아이스크림을 선택하셨습니다. \(icecreamprice[0])원을 결제 하시겠습니까?"
let strawberryicecream = "딸기 아이스크림을 선택하셨습니다. \(icecreamprice[1])원을 결제 하시겠습니까?"
let blueberryicecream = "블루베리 아이스크림을 선택하셨습니다. \(icecreamprice[1])원을 결제 하시겠습니까?"
let ox = "선택은 1번을 , 메뉴로가기는 2번을 눌러주세요"
let pay = "결제 완료!"
//switch
print(menu)
let shake = Int(readLine()!)!
var number = Int(readLine()!)
// number = Int(readLine()!)!
while true{
switch shake{
case 0 :
print(out)
case 1 :
print(burger)
number = Int(readLine()!)!
if number == 1{
print(shackburger)
print(ox)
number = Int(readLine()!)!
switch shake{
case 1 :
print(pay)
case 2 :
print(menu)
default:
print(burger)
}
}else if number == 2 {
print(smokeburger)
print(ox)
number = Int(readLine()!)!
switch shake{
case 1 :
print(pay)
case 2 :
print(menu)
default:
print(burger)
}
}else if number == 3 {
print(shroomburger)
print(ox)
number = Int(readLine()!)!
switch shake{
case 1 :
print(pay)
case 2 :
print(menu)
default:
print(burger)
}
}else if number == 4 {
print(cheeseburger)
print(ox)
number = Int(readLine()!)!
switch shake{
case 1 :
print(pay)
case 2 :
print(menu)
default:
print(burger)
}
}else if number == 5 {
print(hamburger)
print(ox)
number = Int(readLine()!)!
switch shake{
case 1 :
print(pay)
case 2 :
print(menu)
default:
print(burger)
}
}
case 2 :
print(icecream)
number = Int(readLine()!)!
if number == 1{
print(chocoicecream)
print(ox)
number = Int(readLine()!)!
switch shake{
case 1 :
print(pay)
case 2 :
print(menu)
default:
print(icecream)
}
}else if number == 2{
print(vanilaicecream)
print(ox)
number = Int(readLine()!)!
switch shake{
case 1 :
print(pay)
case 2 :
print(menu)
default:
print(icecream)
}
}else if number == 3{
print(strawberryicecream)
print(ox)
number = Int(readLine()!)!
switch shake{
case 1 :
print(pay)
case 2 :
print(menu)
default:
print(icecream)
}
}else if number == 4{
print(strawberryicecream)
print(ox)
number = Int(readLine()!)!
switch shake{
case 1 :
print(pay)
case 2 :
print(menu)
default:
print(icecream)
}
}
case 3 :
print(drinks)
default :
print("숫자를 입력해 주세요.")
number = Int(readLine()!)!
}
}
이렇게 0 ~ 1단계 프로젝트는 팀원들 각자 개인적으로 만들어 보았고,
나머지 2 ~ 5단계 프로젝트를 다같이 협업해서 내일부터 제작에 들어간다 ! 설렘반 긴장반 무서움반