프로그래머스/파이썬_입문

두 수의 나눗셈

싱싱한복초이 2024. 10. 3. 23:55

https://school.programmers.co.kr/learn/courses/30/lessons/120806?language=python3

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

[문제 설명]

정수 num1 num2가 매개변수로 주어질 때, num1 num2로 나눈 값에 1,000을 곱한 후 정수 부분을 return 하도록 soltuion 함수를 완성해주세요.

 

[나의 풀이]

def solution(num1, num2):
    answer = int(num1/num2 * 1000)
    return answer

 

[다른 풀이]

def solution(num1, num2):
    return int(num1 / num2 * 1000)

지역변수 answer를 활용하지 않았을 때의 장점?

-변수 저장을 하는 비용을 절감

-함수화 된 코드는 굳이 변수에 담지 않더라도 return 값으로 주면, 차후에 x = solution(someting) 같은 형태로 불러와서 사용이 가능하므로 재사용이 없는 함수 내 지역변수는 굳이 변수에 담지 않는 것을 추천한다고 함

solution = lambda x, y: 1000 * x // y
import math

def solution(num1, num2):
    return math.trunc(num1 / num2 * 1000)

버림(Trunc): 해당 값에서 0에 가까운 정수를 선택한다, 내장 함수가 아닌 math라이브러리를 사용

-참고

https://yaneodoo2.tistory.com/entry/%ED%8C%8C%EC%9D%B4%EC%8D%AC-%EB%B0%98%EC%98%AC%EB%A6%BC-%EC%98%AC%EB%A6%BC-%EB%82%B4%EB%A6%BC-%EB%B2%84%EB%A6%BC-round-ceil-floor-trunc%EC%9D%98-%EB%AA%A8%EB%93%A0-%EA%B2%83

 

파이썬 반올림, 올림, 내림, 버림 - round, ceil, floor, trunc의 모든 것

목적 알고리즘 문제 풀이 시 숫자를 다룰 때, ~ 번째 자리에서 주로 반올림을 하고, 이 값을 구하는 문제가 있다. 또한 올림, 내림, 버림 형태는 파이썬에서 어떻게 다뤄야할 지 알아보도록 하자.

yaneodoo2.tistory.com

 

'프로그래머스 > 파이썬_입문' 카테고리의 다른 글

분수의 덧셈  (0) 2024.10.04
숫자 비교하기  (0) 2024.10.04
몫 구하기  (0) 2024.10.03
두 수의 합  (0) 2024.10.03
두 수의 곱  (0) 2024.10.03