Python

1. 두 수 몫 구하기, 두 수의 나눗셈 , 숫자 비교하기, 분수 덧셈, 배열 2배 만들기 (Python)

작심반복하기 2024. 10. 22. 12:19

1. 정수 num1과 num2가 매개변수로 주어질 때, num1을 num2로 나눈 몫을 return 하도록 solution 함수를 완성할 것  

solution = int.__floordiv__

 

# 이 함수는 전혀 몰랐던 거라 답안 보고 기록 

# int.__floordiv__(a,b) == a//b  
# 정수 나눗셈에 적합한 함수 

 

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

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

 

3. 정수 num1과 num2가 매개변수로 주어질 때, 두 수가 같으면 1 다르면 -1을 return 하도록 solutioin 함수를 완성할 것 

def solution(num1, num2):
    return 1 if num1==num2 else -1

 

# if -else문을 길게 쓰지 않아도 동일한 결과 도출이 가능함

 

4. 첫 번째 분수의 분자와 분모를 뜻하는 numer1denom1, 두 번째 분수의 분자와 분모를 뜻하는 numer2denom2가 매개변수로 주어집니다. 두 분수를 더한 값을 기약 분수로 나타냈을 때 분자와 분모를 순서대로 담은 배열을 return 하도록 solution 함수를 완성할 것.

def solution(numer1, denom1, numer2, denom2):
    # 분자와 분모 계산
    numerator = numer1 * denom2 + numer2 * denom1
    denominator = denom1 * denom2
    
    # 최대공약수로 분자와 분모를 나누어 기약분수로 변환
    # gcd () 기약 변수 변환 함수 
    from math import gcd
    gcd_value = gcd(numerator, denominator)
    
    return [numerator // gcd_value, denominator // gcd_value]

 

5. 정수 배열 numbers가 매개변수로 주어집니다. numbers의 각 원소에 두배한 원소를 가진 배열을 return하도록 solution 함수를 완성할 것 

def solution(numbers):
    return [num*2 for num in numbers]