강의

멘토링

커뮤니티

인프런 커뮤니티 질문&답변

가보자!!님의 프로필 이미지
가보자!!

작성한 질문수

파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)

4. 대표값

대표값

작성

·

278

3

round()함수는 사사오입의 원칙을 따르는데, 문제에서는 소수첫째자리에서 무조건 반올림하는 경우를 얘기하는 것 같습니다.

round()함수를 쓰면 안될 거 같아 질문을 드립니다.

답변 5

1

김태원님의 프로필 이미지
김태원
지식공유자

감사합니다^^. yoonsik131님 덕에  오늘 좋은 것 배웠네요^^

1

가보자!!님의 프로필 이미지
가보자!!
질문자

강의 열심히 수강하겠습니다^^. (특히 input파일을 만들어서 사용하시는거 정말 굿!!; 한줄씩 입력받는게 항상 고민이었는데... 정말 좋은 해법같습니다)

1

김태원님의 프로필 이미지
김태원
지식공유자

파이썬에서 round가 round-half-up이 아닌 round-half-even 방식을 쓰는 줄 처음 알았습니다. 좋은 지적 감사합니다^^

a=66.5
a=a+0.5
a=int(a)
print(a)

위에 코드처럼 해법을 바꾸도록 하겠습니다.

1

가보자!!님의 프로필 이미지
가보자!!
질문자

질문이 좀 더 구체적일 필요가 있을 거 같아 수정했습니다.
평균이 소수 첫째자리에서 반올림한 값이라고 정의하셨는데, round(4.5)는 4를 리턴하고 round(5.5)는 6을 리턴하니, 우리가 평소, 수학적 의미에서 사용되는 반올림( 5이상은 올림 4이하는 내림)과는 거리가 있는 거 같아 질문을 하게 되었습니다.

1

김태원님의 프로필 이미지
김태원
지식공유자

제가 문제를 만들때 말하고자 했던 것은 출력설명에 있는 말처럼 소수 첫째자리에서 반올림하라는 의미였습니다. 그런데 문제설명에서 소괄호로 표현하다보니 짧게 표현하고자 "에서"라는 말을 빼고 표현했는데, 여기서 생긴 질문일까요? 문제를 수정해서 정확하게 표현해야 겠네요.

간혹 학생들 중에 올림을 "무조건 반올림해요?" 라고 말하는 학생들이 있습니다. 그런 의미로 쓰셨다면 잘못된 표현입니다. 반올림은 반올림일 뿐입니다.

참고로 수학적 용어는 올림, 내림(버림), 반올림으로 사용합니다. 올림은 ceil함수, 내림은 floor함수, 반올림은 round함수를 사용합니다.  

가보자!!님의 프로필 이미지
가보자!!

작성한 질문수

질문하기