# ===== 사용자 정의 함수 =====

# 함수(function)
# 어떤 작업을 여러 번 쉽게 하기 위해 만든 "코드 묶음"

# 기본 형태
'''
def 함수이름(매개변수):
    실행할 코드
    return 반환값  # 필요할 때만 사용
'''

# ⭐ print vs return
# print → 화면에 출력
# return → 값을 돌려줌


print("\n===== 개념 확인 =====")

# 함수 예시
def say_hello():
    print("안녕하세요")

say_hello()




# ---------num = 10------- 함께 해보기 ----------------
print("\n===== 함께 해보기 =====")

# 숫자를 받아서 두 배로 만들어주는 함수
num = 10

def suho(a):
    return a * 2

print(suho(num))



# ---------------- 문제 ----------------
print("\n===== 문제 =====")

print('\n----- 문제 1 -----')
'''
- 함수 이름: greeting
- 매개변수 없음
- 실행하면 'bonjour'를 출력
'''

def greeting():
    print('bonjour')

greeting()



print('\n----- 문제 2 -----')
'''
- 함수 이름: my_star
- 매개변수 a 사용
- '*'을 a만큼 반복한 값을 반환
- 예: a=5 → *****
'''
star = int(input("별 갯수를 입력하세요"))
def my_star(a):
    print()
    for i in range(a):
        print("*", end='')
my_star(star)
print()



print('\n----- 문제 3 -----')
'''
- 함수 이름: greeting2
- 매개변수 nation 사용
- nation 값에 따라 다른 인사말 반환

korean → 안녕하세요  
spain → Hola  
england → Hello  
그 외 → I don't know
'''
a = input("나라 이름을 입력하세요")
def greeting2(nation):
    print()
    if nation == "korean":
        return "안녕하세요"
    elif nation == "spain":
        return "Hola"
    elif nation == "england":
        return "Hello"
    else:
        return "I don't know"
print(greeting2(a))
        




print('\n----- 문제 4 -----')
'''
- 함수 이름: add_numbers
- 매개변수 a, b 사용
- 두 수를 더한 값을 반환
- 예: add_numbers(3, 5) → 8
'''
one = int(input("첫번째 수를 입력하세요"))
print()
two = int(input("두번째 수를 입력하세요"))
print()
def add_numbers(a, b):
    return a +b
print(add_numbers(one,two))
    
    



print('\n----- 문제 5 -----')
'''
- 함수 이름: check_number
- 매개변수 num 사용
- num이 짝수이면 "짝수", 홀수이면 "홀수"를 반환
- 예: check_number(4) → 짝수
'''
a = int(input("수를 입력하세요"))
print()
def check_number(num):
    if a %2 == 0:
        return "짝수"
    else:
        return "홀수"
print(check_number(a))
print()



print('\n----- 문제 6 -----')
'''
- 함수 이름: count_even
- 매개변수 nums 사용
- nums는 숫자가 여러 개 들어있는 리스트
- 리스트 안에 있는 짝수의 개수를 반환
- 예: count_even([1, 2, 3, 4, 6]) → 3
'''
a = 0
b = 0
c = [1,2,3,4,6]

def count_even(nums):
    for d in nums:
        if d%2==0:
            a = a +1
        else:
            b = b +1
nums = c
print(count_even(a))
    


# ---------------- 함께 해보기 ----------------
print("\n===== 함께 해보기 =====")

print('\n----- 재귀호출 -----')

# 자기 자신을 다시 호출하는 함수

def countdown(num):

    if num == 0:
        print('끝!')
        return

    print(num)

    countdown(num - 1)


countdown(5)





# ---------------- 문제 ----------------
print("\n===== 문제 =====")

print('\n----- 문제 7 -----')
'''
함수 이름: repeat_word

- 매개변수 word, num 사용
- word를 num번 출력
- num이 0이 되면 종료

예시
repeat_word('python', 3)

실행 결과
python
python
python
'''






print('\n----- 문제 8 -----')
'''
함수 이름: print_star

- 매개변수 num 사용
- '*'을 한 줄에 하나씩 출력
- num이 0이 되면 종료

예시
print_star(4)

실행 결과
*
*
*
*
'''



print('\n----- 문제 9 -----')
'''
함수 이름: factorial

- 매개변수 num 사용
- num! 값을 반환

예시
print(factorial(5))

실행 결과
120
'''

Embed on website

To embed this project on your website, copy the following code and paste it into your website's HTML: