반응형
BMI 계산기란, 키와 체중을 이용하여 체중 등급을 나타내는 프로그램입니다.
BMI = 체중 / 키 (m 단위)의 제곱
1) 키를 입력받는다.
2) 체중을 입력받는다.
3) 키와 체중을 이용해 BMI를 계산한다.
4) BMI 수치를 근거로 체중등급을 출력한다.
- 18.5 미만 저체중
- 18.5 이상 23 미만 정상체중
- 23 이상 과체중
5) 출력값
- 키 180 체중 72.5일 때 BMI는 xx.xxx이고 정상체중 입니다.
지난번 포스팅한 if문을 이용하여 BMI 계산기 프로그램을 만들어 보겠습니다.
1. 키와 몸무게를 사용자로 부터 입력 받기
print("키를 입력하세요: ", terminator:"")
var height = readLine()!
print("몸무게를 입력하세요: ", terminator:"")
var weight = readLine()!
2. 키와 몸무게를 float로 형변환 해주기, BMI 계산하기
var height_n = Float(height)!/100.0
var weight_n = Float(weight)!
var BMI = weight_n/(height_n*height_n)
3. if문을 활용하여 체중등급 나타내기
var bmi_level = ""
if BMI<18.5{
bmi_level = "저체중"
}else if BMI<23 {
bmi_level = "정상체중"
}else {
bmi_level = "과체중"
}
print("키 \(height)cm 체중 \(weight)kg일 때 BMI는 \(BMI)이고 \(bmi_level)입니다.")
4. 사용자로 부터 번호를 입력받아 BMI 계산기를 실행하거나 프로그램을 종료할 수 있는 기능을 추가해보았습니다.
while true{
print("---- MENU ----")
print("1. BMI 계산기")
print("2. 프로그램 종료")
print("---------------")
print("번호를 선택하세요: ", terminator:"")
var menu = readLine()!
if menu == "1"{
// BMI 계산기 실행
}else if menu == "2" {
// 프로그램 종료
}else {
print("없는 메뉴입니다.")
}
}
전체 코드는 다음과 같습니다.
while true{
print("---- MENU ----")
print("1. BMI 계산기")
print("2. 프로그램 종료")
print("---------------")
print("번호를 선택하세요: ", terminator:"")
var menu = readLine()!
if menu == "1"{
print("키를 입력하세요: ", terminator:"")
var height = readLine()!
print("몸무게를 입력하세요: ", terminator:"")
var weight = readLine()!
var height_n = Float(height)!/100.0
var weight_n = Float(weight)!
var BMI = weight_n/(height_n*height_n)
var bmi_level = ""
if BMI<18.5{
bmi_level = "저체중"
}else if BMI<23 {
bmi_level = "정상체중"
}else {
bmi_level = "과체중"
}
print("키 \(height)cm 체중 \(weight)kg일 때 BMI는 \(BMI)이고 \(bmi_level)입니다.")
}else if menu == "2" {
print("프로그램을 종료합니다.")
exit(0)
}else {
print("없는 메뉴입니다.")
}
}
반복문 끝내기
반복문을 끝내는 방법은 크게 두가지가 있습니다.
- break : 자신을 감싸고 있는 가장 가까운 반복문만 탈출합니다.
- exit(0) : 프로그램을 직접 종료합니다.
반응형
'프로그래밍 언어 > Swift' 카테고리의 다른 글
[Swift] 정수를 무제한 입력받아서 해당 정수들의 합과 평균 구하기 (0) | 2019.06.29 |
---|---|
[Swift] 배열 Array (0) | 2019.06.29 |
[Swift] if 문 & 삼항연산자 (0) | 2019.06.29 |
[Swift] 반복문 for문, while문 (0) | 2019.06.29 |
[Swift] 스위프트 시작하기 (2) | 2019.06.28 |