Python

위치 인수와 키워드 인수 사용

haventmetyou 2023. 10. 16. 17:02
위치지
연습 문제 예제
# 30.6번 연습문제: 가장 높은 점수 구하는 함수 만들기
# 다음 소스 코드를 완성하여 가장 높은 점수가 출력되게 만드세요

kor, eng, mat, sci = 100, 86, 81, 91

def get_max_score(*args):
    return max(args)
max_score = get_max_score(kor, eng, mat, sci)
print('높은 점수:', max_score)

max_score = get_max_score(eng, sci)
print('높은 점수:', max_score)

print()

# 실행 결과

높은 점수: 100
높은 점수: 91

# 30.7번 심사문제: 가장 낮은 점수, 높은 점수와 평균 점수를 구하는 함수 만들기
# 표준 입력으로 국어, 영어, 수학, 과학 점수가 입력됩니다 다음 소스 코드를 완성해
# 가장 높은 점수, 가장 낮은 점수, 평균 점수가 출력되게 만드세요
# 평균 점수는 실수로 출력되어야 합니다

kor, eng, mat, sci = map(int, input().split())

def get_min_max_score(*args):
    min_score = min(args)
    max_score = max(args)

    return min_score, max_score

def get_average(**kwargs):
    add = 0
    leng = 0
    for kw, arg in kwargs.items():
        add += arg
        leng += 1
    average = add / leng

    return average

min_score, max_score = get_min_max_score(kor, eng, mat, sci)
average_score = get_average(kor = kor, eng = eng, mat = mat, sci = sci)
print('낮은 점수: {0: .2f}, 높은 점수: {1: .2f}, 평균 점수: {2: .2f}'.format(min_score, max_score, average_score))

min_score, max_score = get_min_max_score(eng, sci)
average_score = get_average(eng = eng, sci = sci)
print('낮은 점수: {0: .2f}, 높은 점수: {1: .2f}, 평균 점수: {2: .2f}'.format(min_score, max_score, average_score))

# 실행 결과

76 82 89 84
낮은 점수:  76.00, 높은 점수:  89.00, 평균 점수:  82.75
낮은 점수:  82.00, 높은 점수:  84.00, 평균 점수:  83.00

89 92 73 83
낮은 점수:  73.00, 높은 점수:  92.00, 평균 점수:  84.25
낮은 점수:  83.00, 높은 점수:  92.00, 평균 점수:  87.50