개발&코딩/Python

a 부터 b 까지의 합 - Python Algorithm loop_basic

우동이 2021. 1. 3. 19:07

코딩 언어의 기초나 알고리즘의 기초를 배우게 된다면 a부터 b까지의 단순 합을 구하는 논리문제는 자주 접하게 됩니다.

이번 글에서는 파이썬을 통해 a부터 b까지의 합을 구하는 기초 알고리즘을 알아보겠습니다.


a,b = input("a와 b의 값을 입력하시오 >> (구분:공백)").split()

a와 b 두 값을 input()을 통해 입력받고 split()을 통해 분할해 각각 a, b에 값을 넣어줍니다.

즉 한줄로 두 개의 값을 받았습니다.

다만 이렇게 값을 입력받으면 a, b는 정수형이 아닌 문자형으로 저장됩니다.

그러므로 a,b 두 변수의 값을 정수형으로 사용하고자 한다면 별도로 형 변환이 필요합니다.


▶split()에 대해 잘 모른다면 아래를 참고!

 

[Python] - 문자열을 더 편리하게 관리하는 함수들 split,join,replace,count,find

지난번엔 문자열 인덱싱 슬라이싱을 배워봤다 그리고 문자열을 더 편하게 관리할 수 있는 여러 내장함수들에 대해 알아보자 ​ 문자열 함수 - count a = "I love python" print(a.count('o')) >>> 2 count 함수는

hobbylists.tistory.com


1. a 보다 b가 클 경우 오름차순 정렬

a=int(a) # 변수 a를 int(정수형)으로 형변환
b=int(b) # 변수 b를 int(정수형)으로 형변환
if a>b:
    a,b=b,a # a와 b를 오름차순으로 정렬

a와 b가 각각 int형으로 형 변환된 후

a가 b 보다 큰 경우에 a와 b 각각 값을 교환하여 오름차순 정렬이 되도록 합니다.


※참고

타 언어의 값 교환( C 기준 )

int a = 10;
int b = 10;
int temp;

temp = a;
a = b;
b = temp;

C언어에서는 값을 이런 식으로 교환합니다


 

a부터 b까지의 합 - 1

# a부터 b 까지의 합 구하기
a,b= input("a와 b의 값을 입력하시오 >> (구분:공백)").split()
          
a=int(a)
b=int(b)
if a>b:
    a,b=b,a # a와 b를 오름차순으로 정렬

sum=0
for i in range(a,b+1): # 반복자 i 가 a 부터 b 까지 증가 후 sum에 합연산 된다.
    sum+=i

print(f"{a}부터 {b} 까지의 총합은 {sum} 입니다.")

아래는 값을 출력한 결과입니다.

4부터 5까지의 값의 합은 9입니다.

또한 1부터 10까지의 총합은 55입니다.

이런 식으로 a부터 b까지의 합이 구현됩니다.


a부터 b까지의 합 - 2

# a부터 b 까지의 합 구하기
a,b= input("a와 b의 값을 입력하시오 >> (구분:공백)").split()
          
a=int(a)
b=int(b)

if a>b:
    a,b=b,a # a와 b를 오름차순으로 정렬

sum=0
for i in range(a,b):
    print(f'{i} + ', end='')
    sum+=i

print(f"{b} = ", end='')
sum+=b
print(sum)

위 코드는 a 부터 b 까지의 합을 시각적인 수식으로 표현되어 확인할 수 있습니다.

 


 

▶오늘의 코드는 이곳에 정리되어있음!

 

chapter01_basic

maximum + time

www.notion.so