[코드카타 연습하기]코드카타파이썬_2일차(11-20)

Arin lee·2024년 10월 22일
  1. 정수 num이 짝수일 경우 "Even"을 반환하고 홀수인 경우 "Odd"를 반환하는 함수, solution을 완성해주세요.
def solution(num):
    if num % 2 == 0:
        answer = "Even"
    else :
        answer = "Odd"
    return answer
  1. 정수를 담고 있는 배열 arr의 평균값을 return하는 함수, solution을 완성해보세요.
def solution(arr):
    answer = sum(arr)/len(arr)
    return answer
  1. 자연수 N이 주어지면, N의 각 자릿수의 합을 구해서 return 하는 solution 함수를 만들어 주세요.
    예를들어 N = 123이면 1 + 2 + 3 = 6을 return 하면 됩니다.
def solution(n):
    answer = 0
    for i in str(n):
        answer += int(i)
    return answer
  1. 정수 n을 입력받아 n의 약수를 모두 더한 값을 리턴하는 함수, solution을 완성해주세요.
def solution(n):
    answer = 0
    sum = 0
    
    for i in range(1,n+1):
        if n % i == 0:
            sum += i
            answer = sum
    return answer
def solution(n):    
    return sum([i for i in range(1, n+1) if n % i == 0])
  1. 자연수 n이 매개변수로 주어집니다. n을 x로 나눈 나머지가 1이 되도록 하는 가장 작은 자연수 x를 return 하도록 solution 함수를 완성해주세요. 답이 항상 존재함은 증명될 수 있습니다.
def solution(n):
    for i in range(1,n):
        if n%i == 1:
            answer =i
            break
    return answer

16.함수 solution은 정수 x와 자연수 n을 입력 받아, x부터 시작해 x씩 증가하는 숫자를 n개 지니는 리스트를 리턴해야 합니다. 다음 제한 조건을 보고, 조건을 만족하는 함수, solution을 완성해주세요.

def solution(x, n):
    answer = [] # 빈 리스트 선언 
    for i in range(1, n+1): # i = 1부터 n까지 반복 실행 (n번)
        answer.append(x*i) # answer 마지막에 x*i 를 삽입
    return answer # 반복문 종료 후 결과 값 반환
  1. 자연수 n을 뒤집어 각 자리 숫자를 원소로 가지는 배열 형태로 리턴해주세요. 예를들어 n이 12345이면 [5,4,3,2,1]을 리턴합니다.
def solution(n):
    answer = str(n)[::-1]
    ans=[]
    
    for i in answer:
        ans.append(int(i))
    
    return ans
  1. 문자열 s를 숫자로 변환한 결과를 반환하는 함수, solution을 완성하세요.
def solution(s):
    return int(s)
  1. 임의의 양의 정수 n에 대해, n이 어떤 양의 정수 x의 제곱인지 아닌지 판단하려 합니다.
    n이 양의 정수 x의 제곱이라면 x+1의 제곱을 리턴하고, n이 양의 정수 x의 제곱이 아니라면 -1을 리턴하는 함수를 완성하세요.
def solution(n):
    if int(n**0.5) == n**0.5:
        return ((n**0.5)+1)**2 
    else:
        return -1
  1. 함수 solution은 정수 n을 매개변수로 입력받습니다. n의 각 자릿수를 큰것부터 작은 순으로 정렬한 새로운 정수를 리턴해주세요. 예를들어 n이 118372면 873211을 리턴하면 됩니다.
def solution(n):
    answer = list(str(n))
    answer.sort(reverse=True)
    answer = "".join(answer) #매개변수를 하나의 문자열로
    
    return int(answer)#아직 문자이기때문에 정수로 변환

인사이트

type의 변환이 아직 익숙하지 않고, 푸는데 시간이 많이 소요되거나 구글링이 많이 필요하다.

profile
Be DBA

0개의 댓글