Research note

[ 자료구조 ] 재귀 호출 (recursive call)

1. 재귀호출 이용한 카운트다운 함수 def countDown(n): if n==0: print('발사!!') else: print(n) countDown(n-1) 2. 재귀호출 이용한 별 출력 함수 def printStar(n): if n > 0: printStar(n-1) print('★' * n) 3. 단과 곱할 숫

Source

이 글은 기존 Tistory 블로그에서 옮겨온 글입니다. 원문: https://jms3084.tistory.com/16

1. 재귀호출 이용한 카운트다운 함수

def countDown(n):
    if n==0:
        print('발사!!')
    else:
        print(n)
        countDown(n-1)

2. 재귀호출 이용한 별 출력 함수

def printStar(n):
    if n > 0:
        printStar(n-1)
        print('★' * n)

3. 단과 곱할 숫자 이용하여 재귀호출로 구구단 출력 함수

def gugu(dan, num):
    print("%d x %d = %d" %(dan, num, dan*num))
    if num<9:
        gugu(dan, num + 1)

4. n번째 피보나치 수 계산 함수

def fibo(n):
    if n==0:
        return 0
    elif n ==1:
        return 1
    else:
        return fibo(n-1) + fibo(n-2)

5. 주어진 10진수 숫자를 3/8/12/16진수로 변환하여 출력 함수

def notation(base, n, numberChar):
    """
    base: 진수
    n: 10진수 숫자
    numberChar: 12, 16진수 표현 문자
    """
    # 목표: 주어진 10진수 숫자를 3/8/12/16진수로 변환하여 출력
    if n < base:
        print(numberChar[n], end = ' ')
    else:
        notation(base, n // base, numberChar)
        print(numberChar[n%base], end = ' ')

6. 재귀 호출의 작동

  • 자신을 다시 호출하는 것이다.

Search titles, venues, and tags.

move · openesc close