python-5 문제 5-1 두 개의 정수 값을 받아서 두 값의 평균을 구하는 함수를 작성하세요.
1 2 def mysum (a, b ): return (a+b) / 2.0
1.5
문제 5-2 함수의 인자로 리스트를 받은 후 리스트 내에 있는 모든 정수 값에 대한 최댓값과 최솟값을 리턴하는 함수를 작성하세요.
1 2 def get_max_min (data_list ):
1 2 def get_max_min (data_list ): return (max (data_list), min (data_list))
1 max_v, min_v = get_max_min([1 ,2 ,3 ,4 ,5 ,6 ])
6
1
문제 5-3 절대 경로를 입력 받은 후 해당 경로에 있는 *.txt 파일의 리스트 리턴하는 함수를 작성하세요.
1 2 def get_txt_list (path ):
1 2 3 4 5 6 7 8 9 import osdef get_txt_list (path ): osg_list = os.listdir(path) ret_list = [] for x in osg_list: if x.endswith('txt' ): ret_list.append(x) return ret_list
[]
문제 5-4 체질량 지수 (Body Mass Index, BMI)는 인간의 비만도를 나타내는 지수로 체중과 키의 관계로 아래의 수식에 의해 계산됩니다. 여기서 중요한 점은 체중의 단위는 킬로그램 (kg)이고 신장의 단위는 미터 (m)라는 점입니다.
$BMI=체중(kg) / 신장(m)^2$
일반적으로 BMI 값에 따라서 다음과 같이 체형을 분류하고 있습니다.
1 2 3 4 BMI <18.5, 마른체형 18.5 <= BMI < 25.0, 표준 25.0 <= BMI < 30.0, 비만 BMI >= 30.0, 고도 비만
함수의 인자로 체중 (kg)과 신장 (cm)을 받은 후 BMI 값에 따라 ‘마른체형’, ‘표준’, ‘비만’, ‘고도 비만’ 중 하나의 상태를 출력하는 함수를 작성해보세요.
1 2 3 4 5 6 7 8 9 10 11 def Cal_BMI (weight, height ): height = height * 0.01 bmi = weight / (height * height) if bmi < 18.5 : print ('마른체형' ) elif 18.5 <= bmi < 25.0 : print ('표준' ) elif 25.0 <= bmi < 30.0 : print ('비만' ) else : print ('고도비만' )
표준
고도비만
문제 5-5 사용자로부터 키 (cm)와 몸무게 (kg)을 입력 받은 후 BMI 값과 BMI 값에 따른 체형 정보를 화면에 출력하는 프로그램을 작성해보세요. 파이썬에서 사용자로부터의 입력은 input() 함수를 사용하며, 작성된 프로그램은 계속해서 사용자로부터 키와 몸무게를 입력 받은 후 BMI 및 체형 정보를 출력해야 합니다. (무한 루프 구조)
1 2 3 4 5 6 7 8 9 10 11 12 def Cal_BMI_2 (weight, height ): height = height * 0.01 bmi = weight / (height * height) print ("BMI : " , bmi) if bmi < 18.5 : print ('마른체형' ) elif 18.5 <= bmi < 25.0 : print ('표준' ) elif 25.0 <= bmi < 30.0 : print ('비만' ) else : print ('고도비만' )
1 2 3 h = input ('Height (cm) :' ) w = input ('Weight (kg) :' ) Cal_BMI_2(float (w), float (h))
Height (cm) :170.0
Weight (kg) :63.0
BMI : 21.79930795847751
표준
문제 5-6 삼각형의 밑변과 높이를 입력 받은 후 삼각형의 면적을 계산하는 함수를 작성하세요.
1 2 def get_triangle_area (width, height ):
1 2 def get_triangle_area (width, height ): return width * height / 2.0
1 get_triangle_area(10 , 5 )
25.0
문제 5-7 함수의 인자로 시작과 끝 숫자가 주어질 때 시작부터 끝까지의 모든 정수값의 합을 리턴하는 함수를 작성하세요. (시작값과 끝값을 포함)
1 2 def mysum2 (start, end ):
1 2 def mysum2 (start, end ): return sum (range (start, end+1 ))
55
문제 5-8 함수의 인자로 문자열을 포함하는 리스트가 입력될 때 각 문자열의 첫 세글자로만 구성된 리스트를 리턴하는 함수를 작성하세요. 예를 들어 함수의 입력으로 [‘Seoul’, ‘Daegu’, ‘Kwangju’, ‘Jeju’]가 입력될 때 함수의 리턴 값은 [‘Seo’, ‘Dae’, ‘Kwa’, ‘Jej’] 입니다.
1 2 3 4 5 def get_Abbr (data_list ): ret = [] for x in data_list: ret.append(x[:3 ]) return ret
1 get_Abbr(['Seoul' , 'Daegu' , 'Kwangju' , 'Jeju' ])
['Seo', 'Dae', 'Kwa', 'Jej']
Hoyuo 안드로이드 개발자입니다