Languages/Python

[Python] ์žฌ๊ท€ํ•จ์ˆ˜

์ •๋ณด๋ณด์•ˆ๐ŸŒ 2020. 10. 13. 10:40
๋ฐ˜์‘ํ˜•
์žฌ๊ท€ํ•จ์ˆ˜

 

- ์žฌ๊ท€ํ•จ์ˆ˜ : ์ž๊ธฐ ์Šค์Šค๋กœ๋ฅผ ํ˜ธ์ถœํ•˜๋Š” ํ•จ์ˆ˜

- ์žฌ๊ท€ํ˜ธ์ถœ : ํ•จ์ˆ˜๊ฐ€ ์ž๊ธฐ ์ž์‹ ์„ ๋‹ค์‹œ ํ˜ธ์ถœ

def some_func(count):
    if count >0:
        some_func(count-1)
    else:
        return
    print(count)
some_func(5)

 

์˜ˆ์ œ 1)ํ•˜๋…ธ์ด์˜ ํƒ‘

def hanoi(ndisks, startPeg=1, endPeg=3):
if ndisks:
hanoi(ndisks-1, startPeg, 6-startPeg-endPeg)
print(startPeg,"๋ฒˆ ๊ธฐ๋‘ฅ์˜", ndisks,"๋ฒˆ ๊ณ ๋ฆฌ๋ฅผ", endPeg,"๋ฒˆ ๊ธฐ๋‘ฅ์— ์˜ฎ๊น๋‹ˆ๋‹ค.")
hanoi(ndisks-1, 6-startPeg-endPeg, endPeg)

hanoi(ndisks=3)

 

 

 

์˜ˆ์ œ 2) ํŒฉํ† ๋ฆฌ์–ผ ํ•จ์ˆ˜

def factorial(n):
    if n ==0:
        return 1
    elif n > 0:
        return  factorial(n-1)*n

print(factorial(5))
print(factorial(10))

 

์˜ˆ์ œ 3) ํ”ผ๋ณด๋‚˜์น˜ ์ˆ˜์—ด

def fibonacci(n):
    if n == 1 or n == 2:
        return 1
    else:
        return fibonacci(n-1) + fibonacci(n-2)

#fibonacci(10)
print(fibonacci(5))
print(fibonacci(10))

 

 

ํ•จ์ˆ˜ - Iambda

  • ํ•จ์ˆ˜๋ฅผ ์ƒ์„ฑํ•  ๋•Œ ์‚ฌ์šฉํ•˜๋Š” ์˜ˆ์•ฝ์–ด
  • ํ•จ์ˆ˜๋ฅผ ํ•œ ์ค„๋กœ ๊ฐ„๊ฒฐํ•˜๊ฒŒ ๋งŒ๋“ค ๋•Œ ์‚ฌ์šฉ
  • lambda ๋งค๊ฐœ๋ณ€์ˆ˜1, ๋งค๊ฐœ๋ณ€์ˆ˜2,  ... : ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์‚ฌ์šฉํ•œ ํ‘œํ˜„์‹
๋ฐ˜์‘ํ˜•