-
[Python_Algorithm]반복 과정에서 조건 판단하기2(자료구조와 함께 배우는 알고리즘 입문)Python/Algorithm 2021. 1. 5. 21:25
+와 -를 번갈아 출력하는 2가지의 방법이 있다.
if문만을 이용한 방법 --1번
# + 와 -를 번갈아 출력하기 print('+와 -를 번갈아 출력합니다.') n = int(input('몇 개를 출력할까요?: ')) for i in range(n): if i % 2: # 홀수면 나머지가 1이므로 참이여서 if문으로 print('-',end='') else: #짝수면 나머지가 0이므로 거짓이여서 else문으로 print('+',end='') print()
for와 if문을 같이 사용한 방법 --2번
# + 와 -를 번갈아 출력하기 2 print('+ 와 -를 번갈아 출력합니다') n = int(input('몇 개를 출력할까요?: ')) for _ in range(n//2): print('+-',end='') #+-를 n//2개의 출력 if n%2: print('+',end='') #n이 홀수일 때만 +를 출력 print()
: for 문 옆에 '_'의 사용의 이유는 반환하는 값(인덱스)를 사용할 필요가 없어서이기 때문. 파이썬에서는 무시하고 싶은 값을 언더스코어로 표현할 수 있다.
1번 방식의 알고리즘은 다음과 같다
뭔가 알고리즘 그림이 내맘대로인듯.. 이처럼 i%2라는 부분의 계산이 n번만큼 행해져야한다.
2번 방식의 알고리즘
(1번도 이처럼 반복횟수 부분이 있었어야 하는 것 같지만 .. 일단..)
계산을 두번하기는 하지만 반복하는 횟수부분에 있어선 반이 줄어든다.
...(왜 홀수면 if이고 짝수면 else인지 고민하는데 시간이 좀 들었다.. 이건 다 졸려서 그래..)
고민의 흔적1 고민의 흔적2 : 여기서 원인을 알았다.. 'Python > Algorithm' 카테고리의 다른 글
[Python_Algorithm]직사각형 넓이로 변의 길이 구하기(자료구조와 함께 배우는 알고리즘 입문) (0) 2021.01.12 [Python_Algorithm]양수만 입력 받기(자료구조와 함께 배우는 알고리즘 입문) (0) 2021.01.10 [Python_Algorithm]반복 과정에서 조건 판단하기 3(자료구조와 함께 배우는 알고리즘 입문) (2) 2021.01.09 [Python_Algorithm]반복하는 알고리즘(자료구조와 함께 배우는 알고리즘 입문) (0) 2020.12.30 [Python_Algorithm]알고리즘 기초(자료구조와 함께 배우는 알고리즘 입문) (0) 2020.12.30