본문 바로가기
Develop/Python + SWEA

[SW Expert Academy] 6196. 변수

by Tarra 2022. 1. 3.

문제. 1~9 사이의 정수 a를 입력받아 a + aa + aaa + aaaa 의 값을 계산하는 프로그램을 작성하십시오.

 

거의 아무것도 모르는 상태에서 시작하려니까,

제출하는 방법도 잘 모르고 코드 편집기도 다루는게 힘들어서 생각보다 오래 걸렸다.

알고리즘을 거의 모르는 난 이렇게 해결했다.

 

1
2
3
4
5
6
7
8
9
10
11
12
= input()
= str(a)
aa = a+a
aaa = aa+a
aaaa = aaa+a
 
= int(a)
aa = int(aa)
aaa = int(aaa)
aaaa = int(aaaa)
 
print(a+aa+aaa+aaaa)
cs

 

이렇게 알고리즘을 짰을 경우, 위의 문제는 풀리지만 

반복되는 부분도 많고, 더 간단하게 짤 수 있을 거란 생각이 많이 들었다.

그래서 다른 분들의 풀이도 찾아보았고, for문을 이용한 나만의 풀이도 만들어 보았다.


for문을 이용한 다른 풀이.

1
2
3
4
5
= str(input())
= 0
for i in range(15):
    b = b + int(a*i)
print(b)
cs

 

처음 받은 a 변수를 string으로 변환한 뒤

for문에 range(1, 5)를 이용하여 i가 1, 2, 3, 4로 순차적으로 돌게 한다.

a*i를 이용하여 a, aa, aaa, aaaa와 같은 형태를 만들고, 다시 int로 변환하여 비어있는 변수인 b에 더하도록

알고리즘을 짜보았다.

 

 


 

문제 출처 : https://swexpertacademy.com/main/main.do

 

SW Expert Academy

SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!

swexpertacademy.com

※ SW Expert 아카데미는 원칙적으로 문제를 무단 복제하는 것을 금지합니다.

학습용으로 문제를 가져왔으나, 문제가 될 시 수정 및 삭제하겠습니다.