숫자를문자로

박재현·2022년 2월 17일
0

알고리즘 부수기

목록 보기
26/43
post-thumbnail

문제 설명

문제 정의

숫자를 입력받아 문자열로 출력해라

제한

내장함수를 사용하지 않는다.

입력

5
3
1461
4671224
85761
-1

출력

#1 3 <class 'str'>
#2 1461 <class 'str'>
#3 4671224 <class 'str'>
#4 85761 <class 'str'>
#5 -1 <class 'str'>

문제 풀이

  1. 입력받은 number를 10으로 나누며 나머지를 numArr 배열에 넣어준다.
  2. 각 numArr값을 순회하며 아스키코드 48을 더해준다.('0'의 아스키코드가 48)
  3. result에 변환된 string값을 넣어준다.

코드

def itoa(number, numArr):
    while number > 0:
        rest = number % 10
        number = number // 10
        numArr.append(rest)
    for i in range(len(numArr)):
        numArr[i] = chr(numArr[i] + 48)

T = int(input())
for tc in range(1, T+1):
    result = ""
    numArr =[]
    number = int(input())

    if number < 0:
        result += "-"
        number = abs(number)
    itoa(number, numArr)
    for i in range(len(numArr)):
        result += numArr[len(numArr) - i - 1]
    print(f'#{tc} {result} {type(result)}')
profile
공동의 성장을 추구하는 개발자

0개의 댓글