Notice
Recent Posts
Recent Comments
Link
Hugh_휴 님의 블로그
파이썬 함수 연습(문제 포함)(난이도 0-3) 본문
오늘 파이썬 함수를 배웠다. 자판기 만들기를 했었는데 잘 안된다.
오늘 배운 함수를 직접 코드 짜보는 연습을 해보려고 한다.
문제는 제미나이가 생성해주었고, 자격증 공부 때문에 오늘은 이 정도만 복습하려고 한다.
난이도 총 8000까지 있다면 겨우 0-3정도만 연습했다.
-------연습(난이도0)------------
<문제1>
기준:
- 함수 이름은 double로 만드세요.
- 재료(매개변수)는 숫자 하나(n)를 받습니다.
- 함수 안에서 n * 2를 계산해서 돌려줍니다(return).
#함수 이름은 double로 만드세요.
#재료(매개변수)는 숫자 하나(n)를 받습니다.
#함수 안에서 n * 2를 계산해서 돌려줍니다(return).
def double(n):
result = n*2
return
print(double(10))

아 정말 간단한 문제일텐데 여기서부터 막힌다..
#함수 이름은 double로 만드세요.
#재료(매개변수)는 숫자 하나(n)를 받습니다.
#함수 안에서 n * 2를 계산해서 돌려줍니다(return).
def double(n):
return n*2
print(double(10))

아 정말.. 껌이다. 문제 몇개 더 풀어보자.
<문제2>
기준:
- 함수 이름은 hello로 만드세요.
- 재료(매개변수)는 이름(name) 하나를 받습니다.
- 함수 안에서 "안녕, " + name을 계산해서 돌려주세요(return).
- print(hello("파이썬"))을 실행했을 때 안녕, 파이썬이 출력되면 성공!
#함수 이름은 `hello`로 만드세요.
#재료(매개변수)는 이름(`name`) 하나를 받습니다.
#함수 안에서 `"안녕, " + name`을 계산해서 돌려주세요(`return`).
#print(hello("파이썬"))`을 실행했을 때 **`안녕, 파이썬`*이 출력되면 성공!
def hello(name):
return ('안녕' + name)
print(hello("파이썬"))

그래, 반갑다 파이썬.
<문제3>
기준:
- 함수 이름: combine
- 매개변수: word1, word2 (두 개를 받습니다)
- 함수 내용: 두 단어 사이에 한 칸 공백(" ")을 넣어 합친 결과를 돌려줍니다.
- 확인용: print(combine("파이썬", "최고")) -> 결과: 파이썬 최고
#1. 함수 이름: `combine`
#2. 매개변수: `word1`, `word2` (두 개를 받습니다)
#3. 함수 내용: 두 단어 사이에 한 칸 공백(" ")을 넣어 합친 결과를 돌려줍니다.
#4. **확인용:** `print(combine("파이썬", "최고"))` -> 결과: `파이썬 최고`
def combine(word1, word2):
return word1+ " "+ word2
print(combine("파이썬", "최고"))

맞아 너 최고야.
------------연습(난이도1)--------------
<문제4>
기준:
- 함수 이름: is_pass
- 매개변수: score (숫자 하나)
- 함수 내용:
- 만약 score가 60 이상이면 "합격"을 return 하세요.
- 그게 아니면(else) "불합격"을 return 하세요.
- 확인용: print(is_pass(80)) -> 결과: 합격
#1. 함수 이름: `is_pass`
#2. 매개변수: `score` (숫자 하나)
#3. 함수 내용:
#- 만약 `score`가 60 이상이면 `"합격"`을 `return` 하세요.
#- 그게 아니면(`else`) `"불합격"`을 `return` 하세요.
#4. **확인용:** `print(is_pass(80))` -> 결과: `합격`
def is_pass(score):
if score >= 60:
return '합격'
else:
return '불합격'
print(is_pass(80))

좋아, 합격!
<문제5>
기준:
- 함수 이름: get_max
- 매개변수: num1, num2 (두 개를 받습니다)
- 함수 내용:
- 두 수 중에서 더 큰 값을 찾아서 그 숫자를 return 하세요.
- (힌트: if num1 > num2: 를 사용해 보세요!)
- 확인용: print(get_max(10, 25)) -> 결과: 25
#1. 함수 이름: `get_max`
#2. 매개변수: `num1`, `num2` (두 개를 받습니다)
#3. 함수 내용:
# - 두 수 중에서 더 큰 값을 찾아서 그 **숫자**를 `return` 하세요.
# - (힌트: `if num1 > num2:` 를 사용해 보세요!)
#4. **확인용:** `print(get_max(10, 25))` -> 결과: `25`
def get_max(num1, num2):
if num1 > num2:
return num1
elif num1 < num2:
return num2
else:
return num1 == num2
print(get_max(10, 25))

오케이~
-----------연습(난이도1.5)---------------
<문제6>
기준:
- 함수 이름: can_ride
- 매개변수: age, height (두 개를 받습니다)
- 함수 내용:
- 나이가 8세 이상이고, 키가 120cm 이상이면 "입장 가능"을 return 하세요.
- 둘 중 하나라도 충족하지 못하면 "입장 불가"를 return 하세요.
- (힌트: 두 조건을 모두 만족해야 할 때는 and를 사용하세요.)
- 확인용: print(can_ride(10, 130)) -> 결과: 입장 가능
#1. 함수 이름: `can_ride`
#2. 매개변수: `age`, `height` (두 개를 받습니다)
#3. 함수 내용:
# - 나이가 **8세 이상**이고, 키가 **120cm 이상**이면 `"입장 가능"`을 `return` 하세요.
# - 둘 중 하나라도 충족하지 못하면 `"입장 불가"`를 `return` 하세요.
# - (힌트: 두 조건을 모두 만족해야 할 때는 `and`를 사용하세요.)
#4. **확인용:** `print(can_ride(10, 130))` -> 결과: `입장 가능`
def can_ride(age, height):
if age >= 8 and height >=120:
return "입장 가능"
else:
return "입장 불가"
print(can_ride(10, 130))

좋아써!
<문제7>
기준:
- 함수 이름: check_odd_even
- 매개변수: num (숫자 하나)
- 함수 내용:
- 숫자를 2로 나누었을 때 나머지가 0이면 "짝수"를 return 하세요.
- 아니면 "홀수"를 return 하세요.
- (힌트: 나머지를 구하는 기호는 %입니다. 예: num % 2 == 0)
- 확인용: print(check_odd_even(7)) -> 결과: 홀수
#1. 함수 이름: `check_odd_even`
#2. 매개변수: `num` (숫자 하나)
#3. 함수 내용:
# - 숫자를 2로 나누었을 때 나머지가 0이면 `"짝수"`를 `return` 하세요.
# - 아니면 `"홀수"`를 `return` 하세요.
# - (힌트: 나머지를 구하는 기호는 `%`입니다. 예: `num % 2 == 0`)
#4. **확인용:** `print(check_odd_even(7))` -> 결과: `홀수`
def check_odd_even(num):
if num%2 == 0:
return '짝수'
else:
return '홀수'
print(check_odd_even(7))

--------------연습(난이도3)--------------
#기준:
#함수 이름: check_alcohol
#매개변수: age(나이), money(가진 돈), price(상품 가격) 세 개를 받습니다.
#함수 내용 (아래 조건 순서대로 체크하세요):
#조건 1: 만약 age가 19세 미만이면, 돈이 얼마든 상관없이 "미성년자 구매 불가"를 return 하세요.
#조건 2: 나이가 19세 이상인데, 만약 money가 price보다 적다면 "잔액 부족"을 return 하세요.
#조건 3: 위 두 조건에 해당하지 않으면(나이도 성인이고 돈도 충분하면), 계산 후 남은 **거스름돈(숫자)**을 return 하세요.
#확인용:
#print(check_alcohol(17, 10000, 5000)) -> 결과: 미성년자 구매 불가
#print(check_alcohol(25, 3000, 5000)) -> 결과: 잔액 부족
#print(check_alcohol(22, 10000, 4000)) -> 결과: 6000
def check_alcohol(age, money, price):
if age < 19:
return "미성년자 구매 불가"
elif age >= 19 and money < price:
return "잔액 부족"
else:
return price - money
print(check_alcohol(17, 10000, 5000))
print(check_alcohol(25, 3000, 5000))
print(check_alcohol(22, 10000, 4000))

반복해서 하다 보니 자연스럽게 익숙해진다.
문제는 제미나이가 생성해주었고, 자격증 공부 때문에 오늘은 이 정도만 복습하려고 한다.
'실습 연습' 카테고리의 다른 글
| 웹 프로그래밍 - 데이트 코스 만들기2(Apache+PHP+MariaDB) (1) | 2026.04.16 |
|---|---|
| 웹 프로그래밍 - 데이트 코스 만들기(Apache+PHP+MariaDB) (0) | 2026.04.15 |
| C언어 코드 공부3(if문, switch문, 가위바위보) (0) | 2026.04.03 |
| C언어 코드 공부2(while, do_while, star) (0) | 2026.04.03 |
| C언어 코드 공부1 (0) | 2026.04.02 |