반응형
문제 18 : 평균점수
더보기
영하네 반은 국어, 수학, 영어 시험을 보았습니다.
영하는 친구들의 평균 점수를 구해주기로 했습니다.
공백으로 구분하여 세 과목의 점수가 주어지면 전체 평균 점수를 구하는 프로그램을 작성하세요.
단, 소숫점 자리는 모두 버립니다.
def calculate_average(scores):
# 점수 리스트를 각각 정수로 변환
score_list = list(map(int, scores.split()))
# 평균 점수 계산 (소수점 버리기 위해 // 연산자 사용)
average_score = sum(score_list) // len(score_list)
print(average_score)
# 예시 입력
scores = input("세 과목의 점수를 공백으로 구분하여 입력하세요: ")
calculate_average(scores)
코드 설명:
- calculate_average 함수는 scores라는 문자열을 입력받습니다.
- scores.split()을 사용하여 공백을 기준으로 점수를 분리하고, map(int, ...)을 사용하여 문자열로 되어 있는 점수를 정수형으로 변환한 후 score_list에 저장합니다.
- sum(score_list)는 점수의 합을 계산하고, len(score_list)는 점수의 개수를 반환합니다.
- // 연산자를 사용하여 소수점 이하를 버린 평균 점수를 계산합니다.
- 결과를 print()로 출력합니다.
사용 예:
- 입력: 20 30 40
- 출력: 30
- 입력: 70 80 90
- 출력: 80
문제 19 : 제곱을 구하자
def calculate_power(a, b):
result = a ** b
print(result)
# 예시 입력
a, b = map(int, input("두 숫자를 공백으로 구분하여 입력하세요: ").split())
calculate_power(a, b)
코드 설명:
- calculate_power 함수는 두 개의 매개변수 aa와 bb를 입력받습니다.
- a ** b 연산을 통해 aa의 bb승을 계산하고, 그 결과를 result에 저장합니다.
- 결과를 print()로 출력합니다.
- input() 함수를 사용하여 사용자로부터 두 숫자를 입력받고, split()을 사용하여 공백을 기준으로 분리합니다.
- map(int, ...)을 사용하여 각각의 입력 값을 정수형으로 변환합니다.
사용 예:
- 입력: 2 3
- 출력: 8
- 입력: 5 4
- 출력: 625
문제20 : 몫과 나머지
def divide_and_remainder(a, b):
quotient = a // b # 몫을 구하는 연산자
remainder = a % b # 나머지를 구하는 연산자
print(quotient, remainder)
# 예시 입력
a, b = map(int, input("두 숫자를 공백으로 구분하여 입력하세요: ").split())
divide_and_remainder(a, b)
코드 설명:
- divide_and_remainder 함수는 두 개의 정수 aa와 bb를 입력받습니다.
- a // b를 사용하여 몫을 계산하고, 결과를 quotient에 저장합니다.
- a % b를 사용하여 나머지를 계산하고, 결과를 remainder에 저장합니다.
- print(quotient, remainder)를 사용하여 몫과 나머지를 공백으로 구분하여 출력합니다.
- input() 함수를 사용하여 사용자로부터 두 숫자를 입력받고, split()을 사용하여 공백을 기준으로 분리합니다.
- map(int, ...)을 사용하여 각각의 입력 값을 정수형으로 변환합니다.
사용 예:
- 입력: 10 2
- 출력: 5 0
- 입력: 13 4
- 출력: 3 1
문제 21 : set은 어떻게 만드나요?
더보기
다음 중 set을 만드는 방법이 아닌 것?
- x = {1, 2, 3, 5, 6, 7}
- x = {}
- x = set('python')
- x = set(range(5))
- x = set()
2) x = {}
이유:
- 1) x = {1, 2, 3, 5, 6, 7}: 이 방법은 숫자 요소로 구성된 set을 생성합니다.
- 2) x = {}: 이 방법은 비어있는 딕셔너리를 생성합니다. 파이썬에서는 빈 중괄호 {}를 사용하면 set이 아니라 딕셔너리가 만들어집니다.
- 3) x = set('python'): 이 방법은 문자열을 set으로 변환하여, 문자열의 각 문자를 요소로 가지는 set을 생성합니다.
- 4) x = set(range(5)): 이 방법은 range(5)로 생성된 숫자 시퀀스를 set으로 변환하여 {0, 1, 2, 3, 4}를 생성합니다.
- 5) x = set(): 이 방법은 빈 set을 생성합니다.
문제 22 : 배수인지 확인하기
더보기
1) i / 6 == 0
2) i % 6 == 0
3) i & 6 == 0
4) i | 6 == 0
5) i // 6 == 0
정답:
2) i % 6 == 0
이유:
- i / 6 == 0: 이 표현은 i를 6으로 나눈 결과가 0과 같은지를 비교합니다. 부동소수점 나눗셈을 수행하고 있기 때문에 6의 배수를 확인하는 데 사용되지 않습니다.
- i % 6 == 0: 이 표현은 i를 6으로 나눈 나머지가 0인지 확인합니다. 즉, i가 6으로 나누어떨어지면(6의 배수이면) 참이 됩니다.
- i & 6 == 0: 이 표현은 비트 단위의 AND 연산을 수행합니다. 6의 배수인지 확인하는 방법이 아닙니다.
- i | 6 == 0: 이 표현은 비트 단위의 OR 연산을 수행합니다. 6의 배수인지 확인하는 방법이 아닙니다.
- i // 6 == 0: 이 표현은 정수 나눗셈을 수행하고 몫이 0인지를 확인합니다. 6의 배수인지 확인하는 데 사용되지 않습니다.
반응형
'위니브 엠버서더 > 코딩테스트 문제풀이' 카테고리의 다른 글
[위니브엠버서더]제주코딩베이스캠프 Code Festival: Python 100제 (23-27번 문제까지 풀이) (0) | 2024.08.29 |
---|---|
[위니브엠버서더]제주코딩베이스캠프 Code Festival: Python 100제 (13-17번 문제까지 풀이) (0) | 2024.08.28 |
댓글