Ops-Beginner
Published 2023. 5. 28. 11:12
Python 스터디 6장 PYTHON
반응형

Q1. 호박 고르기

가장 큰 호박을 골라서 호박죽을 쑤고, 가장 작은 호박으로는 호박볶음을 해 먹으려고 해요. 변수 pumpkin에 튜플 자료형으로 호박 다섯 개가 담겨있어요. 가장 큰 호박과 가장 작은 호박을 구해 보세요.

A1.

# 호박 다섯 개가 튜플 자료형으로 들어 있어요
pumpkin = (1, 5, 2, 3, 6)

# 가장 큰 호박을 골라서 변수에 저장하세요
big = max(pumpkin)

# 가장 작은 호박을 골라서 변수에 저장하세요
small = min(pumpkin)

Q2. 시퀀스의 합과 길이 구하기

시퀀스의 합과 길이를 쉽게 구하는 방법을 익혀 봅시다.

A2. 

# 숫자 다섯 개가 리스트에 담겨 있어요
my_list = [1, 2, 3, 4, 5]

# my_list의 합을 넣어 보세요
var1 = sum(my_list)

# my_list의 길이를 넣어 보세요
var2 = len(my_list)

# my_list 원소들의 평균을 넣어 보세요
var3 = var1 / var2

Q3. 봉주~르! 좋은 하루!

'안녕하세요'는 프랑스어로 '봉주~르!'예요. 혹시 까먹을지도 모르니 실행하면 프랑스어 인사말이 나오는 함수를 만들어 보세요.

- 함수 이름은 greeting이라고 지어요.

- 매개변수를 사용하지 않아요.

- 함수를 실행하면 bonjour 를 출력해요.

- 반환값은 없어요.

A3.

# 조건에 맞게 사용자 정의 함수를 만들어 보세요
def greeting():
    print("bonjour")

# 함수를 사용해 프랑스어로 인사해 보세요
greeting()

Q4. 나만의 별 찍기 함수

별을 원하는 개수만큼 찍어 1층짜리 별자리를 결과값으로 반환하는 함수를 직접 만들어 보세요.

- 함수 이름은 my_star라고 지어요.

- 매개변수로 a를 사용해요.

- 함수를 실행하면 '*'과 a를 곱하고 그 값을 반환해요.

A4.

# 조건에 맞게 사용자 정의 함수를 만들어 보세요
def my_star(a):
    print('*' * a)

# 함수를 사용해 1층짜리 별자리를 출력해 보세요
my_star(1)

Q5. 사투리 번역기 만들기

서울 인사말은 전역변수로, 부산 인사말은 지역 변수로 비유하면 이해하기 쉽습니다.

전역변수와 지역변수를 연습하면서 코드를 완성해 보세요.

A5. 

# 문자열 '밥 먹었니?'를 담아 보세요
greeting ='밥 먹었니?'

# 서울 인사말을 출력하면 다음과 같습니다
print('서울:', greeting)

# 함수 busan() 안에 '밥 뭇나?'가 담긴 변수 greeting을 넣어 보세요
def busan():
    greeting ='밥 뭇나?'
    print('부산:', greeting)
    
# 함수 busan()을 실행해 보세요
busan()
# 변수 greeting을 출력해 보세요
print(greeting)

Q6. 코딩 대회 성적 관리하기

동물 친구들이 코딩 대회가 참가했습니다. 메서드를 사용하여 동물 친구들의 코딩 대회 성적을 관리해 봐요.

A6. 

# 동물 친구들의 코딩 성적이 제출순으로 기록되었어요
score = [55, 58, 60, 45, 100, 95, 70, 88]

# 잠깐! 거북이가 마지막으로 제출합니다. 90점을 추가하세요
score.append(90)

# 여섯 번째로 제출한 두더지는 커닝을 했네요. 기록을 지우세요
score.pop(5)

Q7. 더 큰 수 찾기

1교시 과목은 수학입니다. 코딩별에서는 수학 문제를 코딩으로 풀어도 된다고 해요.

math 모듈을 활용하여 다음 문제를 풀어 보세요.

- 7의 12제곱과 6의 13제곱 중에서 더 큰 수를 구하세요. 단, 두 수는 같지 않습니다.

A7. 

# math 모듈을 불러오세요
import math

# 7의 12제곱과 6의 13제곱 값을 순서대로 저장하세요
num1 = math.pow(7, 12)
num2 = math.pow(6, 13)

# if 문에 알맞은 조건을 적어 답을 출력하세요
if num1 > num2:
    print('7의 12제곱이 더 큽니다.')
else:
    print('6의 13제곱이 더 큽니다.')

Q8. 최댓값 직접 구하기

내장 함수를 사용할 수 없다면 함수를 직접 만드는 수밖에 없겠죠? max() 대신 최댓값을 구하는 my_max() 함수를 만들어 보세요.

- 함수 이름은 my_max라고 지어요.

- 매개변수로 리스트 nums를 사용해요.

- 리스트 안의 원소 중에서 아무거나 하나를 골라 최댓값 max_num으로 지정해요.

A8. 

# 조건에 맞게 my_max() 함수를 만들어 보세요
def my_max(nums):
    max_num = 0
    for i in nums:
        if i > max_num:
            max_num = i
    return max_num
    
# 다음 리스트에서 최댓값이 무엇인지 확인해 보세요
print(my_max([1, 2, 10, 9, 3, 7, 0, 99, 27, 85]))

Q9. 네버랜드

놀이 기구의 대기 시간이 담긴 리스트가 인자로 주어졌을 때, 엘리스 토끼가 놀이 기구를 타는 순서로 대기 시간을 정렬하는 neverland() 함수를 만들어 보세요.

- 대기 시간이 가장 짧은 놀이 기구부터 오름차순으로 탑니다.

- 단, 인덱스 2에 해당하는 놀이 기구는 토끼가 꼭 타고 싶어 하므로 대기 시간에 상관없이 가장 먼저 탑니다.

- 반환값 : 앞에서 제시한 조건에 맞게 정렬된 리스트

A9. 

# 조건에 맞게 neverland() 함수를 만들어 보세요
def neverland(q):
    temp = q.pop(2)
    q.sort()
    q.insert(0, temp)
    return q
    
# 대기 시간이 다음과 같을 때 엘리스 토끼가 놀이 기구를 타는 순서를 확인해 보세요
q = [30, 10, 20, 50, 40, 60]
print(neverland(q))
반응형

'PYTHON' 카테고리의 다른 글

Python 스터디 2기 시작!  (0) 2023.06.02
Python 스터디 5장  (0) 2023.05.21
Python 스터디 4장  (0) 2023.05.19
Python 스터디 3장  (0) 2023.05.18
Python 스터디 2장  (0) 2023.05.03
profile

Ops-Beginner

@asher_r

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!