본문 바로가기
Algorithm/CodeUp

[CodeUp 기초 100제]1008 : [기초-출력] 출력하기08(풀이 성공)

by 전봇대파괴자 2020. 3. 8.

 


입력:

없음

 

 

출력:

┌┬┐
├┼┤
└┴┘

 

조건: 반드시 유니코드를 이용하여 출력한다.


내 코드:

# 입력할 특수문자의 유니코드 확인(답안 포함 X)
print(ord('┌'))
print(ord('┬'))
print(ord('┐'))
print(ord('├'))
print(ord('┼'))
print(ord('┤'))
print(ord('└'))
print(ord('┴'))
print(ord('┘'))

# 유니코드=>특수문자로 변경 후 출력
print(chr(9484)+chr(9516)+chr(9488))
print(chr(9500)+chr(9532)+chr(9508))
print(chr(9492)+chr(9524)+chr(9496))

 

 

또 다른 풀이:

# 리스트를 생성해 for문으로 특수문자별 유니코드 뽑아내기(답안 포함 X)
li = ['┌','┬','┐','├','┼','┤','└','┴','┘']
for i in li:
    print(ord(i))
    
# 유니코드=>특수문자로 변환해 출력
print(chr(9484), chr(9516), chr(9488), sep='')
print(chr(9500), chr(9532),chr(9508), sep='')
print(chr(9492), chr(9524), chr(9496), sep='')

 

Comment: 드디어 기초출력 마지막 문제입니다. 이 문제에서는 특정 문자의 유니코드를 변환해 돌려주는 함수ord()와 반대로 유니코드를 입력했을 때 해당하는 문자를 돌려주는 함수chr()의 활용이 핵심입니다. 예시를 보겠습니다.

 

# 특수문자=>유니코드로 변환
print(ord('┌'))
=> 9484
print(ord('┬'))
=> 9516

# 유니코드=>특수문자로 변환
print(chr(9484))
=> ┌
print(chr(9516))
=> ┬

ord()함수로 해당 특수문자의 유니코드만 알아내면 그 다음은 chr()함수를 print 함수 안에 넣어 출력하기만 하면 됩니다. 같은 줄의 세 기호들끼리는 공백 없이 붙어 출력되어야 하므로 '+'를 써도 되고, 또 다른 풀이에서처럼 ,를 찍고 sep 옵션을 줘도 됩니다.