콘텐츠 내 자동삽입광고

광고1

posted by 초코생크림빵 2025. 8. 24. 17:27
반응형

키와 몸무게를 입력받아 BMI 지수를 계산한 후 비만 상태를 출력하시오.

조건)

BMI 지수

18 미만 : 저체중

18~23 미만 : 정상

23~25 미만 : 과체중

25 이상 : 비만

 

h=int(input('키 입력: '))
w=int(input('몸무게 입력: '))
bmi=w/((h/100)*(h/100))

if bmi < 18:
    result='저체중'
elif 18 <= bmi <23:
    result='정상'
elif 23 <= bmi < 25:
    result='과체중'
else:
    result='비만'

print(f'BMI: {bmi:.2f}, {result}')

결과)
키 입력: 166
몸무게 입력: 63
BMI: 22.86, 정상

키 입력: 166
몸무게 입력: 81
BMI: 29.39, 비만

파이썬 소스 및 결과 입니다. 소스 설명)

코드 개요

제공된 코드는 사용자의 몸무게를 입력받아 체질량지수(BMI)를 계산하고, 그 결과에 따라 저체중, 정상, 과체중, 비만 중 하나로 판정하여 출력하는 프로그램입니다.


코드 상세 설명

1. 변수 입력

Python
 
h = int(input('키 입력: '))
w = int(input('몸무게 입력: '))
  • input('키 입력: '): 사용자에게 '키 입력: '이라는 메시지를 보여주고 입력을 받습니다. 입력된 값은 문자열 형태입니다.
  • int(): 입력받은 문자열을 정수(integer)로 변환합니다. 예를 들어, 사용자가 '166'을 입력하면 int() 함수는 이를 숫자 166으로 바꿉니다.
  • h, w: 변환된 정수 값은 각각 h (키)와 w (몸무게) 변수에 저장됩니다.

2. BMI 계산

Python
 
bmi = w / ((h / 100) * (h / 100))
  • BMI(체질량지수)는 몸무게(kg)를 키(m)의 제곱으로 나눈 값입니다.
  • h / 100: 입력받은 키 h는 센티미터(cm) 단위이므로, 이를 미터(m) 단위로 변환하기 위해 100으로 나눕니다.
  • (...) * (...): 변환된 키(m)를 두 번 곱하여 제곱합니다.
  • w / ...: 몸무게 w를 키의 제곱으로 나누어 최종 BMI 값을 계산합니다. 계산된 값은 bmi 변수에 저장됩니다.

3. 조건문 (if-elif-else)

Python
 
if bmi < 18:
    result = '저체중'
elif 18 <= bmi < 23:
    result = '정상'
elif 23 <= bmi < 25:
    result = '과체중'
else:
    result = '비만'

이 부분은 계산된 bmi 값을 기준으로 어떤 결과인지 판정하는 과정입니다.

  • if bmi < 18: 만약 bmi가 18보다 작으면, result 변수에 '저체중'이라는 문자열을 할당합니다.
  • elif 18 <= bmi < 23: 앞선 조건이 거짓이고 bmi가 18 이상 23 미만이면, result에 '정상'을 할당합니다.
  • elif 23 <= bmi < 25: 앞선 조건들이 모두 거짓이고 bmi가 23 이상 25 미만이면, result에 '과체중'을 할당합니다.
  • else: 위의 모든 조건이 거짓일 경우 (즉, bmi가 25 이상일 경우), result에 '비만'을 할당합니다.

4. 결과 출력

Python
 
print(f'BMI: {bmi:.2f}, {result}')
  • f'...': f-string 이라는 포맷팅 방식을 사용합니다. 문자열 내에 변수 값을 쉽게 포함시킬 수 있습니다.
  • {bmi:.2f}: bmi 변수의 값을 출력하되, 소수점 둘째 자리까지 반올림하여 표시하도록 지정합니다.
  • {result}: result 변수에 저장된 판정 결과('정상' 또는 '비만' 등)를 출력합니다.
  • 이 구문을 통해 최종적으로 'BMI: xx.xx, [판정 결과]' 형태의 메시지가 화면에 나타나게 됩니다.
반응형

콘텐츠 내 자동삽입광고