workSpace/ALGORITHM

[Python] 두 정수 사이의 합

J o e 2020. 12. 17. 23:21

[문제 설명]
두 정수 a,b가 주어졌을때 a와 b 사이에 속한 모든 정수의 합을 리턴하는 함수, solutiondmf
완성하세요. 예를 들어, a = 3, b = 5인 경우, 3+4+5=12 이므로 12를 리턴합니다.

[나의 풀이]

list = []
def solution(a, b):  # a와 b를 파라미터값으로 받고,
    if a == b:
        c = -a
    else:
        x = b + a
        c = x // 2

    answer = a + b + c
    print(answer)
    return answer

a = int(input("a 값:"))
b = int(input("b 값:"))
solution(a, b)

[다른 풀이]

def adder(a, b):
    # 함수를 완성하세요
    if a > b:
        a, b = b, a

    return sum(range(a, b + 1))  # sum 함수를 사용해서 3~5까지 더해준다.

print(adder(3, 5))
def solution(a, b):
    answer = 0
    if a > b:  # 만일 a가 b보다 큰경우,
        a, b = b, a  # 서로 자리를 바꿔 a를 낮은수로 만들어 줍니다.
    for i in range(a, b + 1):  # 그 후에 a번 부터 b+1번까지 정수 i로 반복해줍니다.
        answer += i  # answer로 반복된 i를 차례대로 넣어 더해줍니다. 3 4 5
    print(answer)  # 해당 답을 프린트해보고,
    return answer  # 해당 값을 return 합니다.

solution(3, 5)
def solution(a, b):
    print((abs(a - b) + 1) * (a + b) // 2)
    return (abs(a - b) + 1) * (a + b) // 2

solution(3, 5)