4장 연습 문제 11번, 12번

주어진 문자열의 순서를 역순으로 출력하는 문제이다. 11번에서는 while , 12번에서는 for 문을 이용하라고 했다.

실제 코딩에서는 굳이 while 과 for 문을 이용할 필요 없이 슬라이싱을 통해 역순으로 출력하면 간단 할 것이다.

11번
s = raw_input('Input : ')

k = len(s)-1
l = []
while k >= 0 :
   l.append(s[k])
   k-=1

print ''.join(l)
12번
s = raw_input('Input : ')

l = []
for k in range(len(s)-1,-1,-1) :
   l.append(s[k])

print ''.join(l)
11번과 12번에서 모두 리스트에서 저장하여 연결을 했는데, 그 이유는 "print s[k]," 를 하면 문자들이 한칸씩 띄어져서 출력된다.

그래서 리스트에 저장하면 합쳐버렸다.......

그나저나 저 문제는 슬라이싱을 이용해서 코딩하면

print s[::-1]

바로 역순으로 출력된다.....

댓글 없음:

댓글 쓰기