반복문 연습문제 1) 리스트 안에 특정 숫자가 몇 번 등장하는지 출력하기
numbers = [1, 2, 3, 4, 2, 2, 5, 2]
# 출력예시
# 리스트에서 2는 4회 등장합니다!
# 내가 작성한 코드
num2 = int(input())
for num in numbers:
count = numbers.count(num2)
print(f"리스트에서 {num2}은 {count}회 등장합니다!")
count( ) 함수를 배웠던 것이 기억나 간단하게 count( )함수를 사용하였는데, 이 문제의 힌트를 보니 'count += 1'를 사용해서 작성하기를 기대했던 것 같아 다시 작성해보았다.
# 문제에서 요구한 방향으로 짠 코드
number = int(input())
count = 0
for num in numbers:
if num == number:
count += 1
print(f"리스트에서 {number}은 {count}회 등장합니다!")
반복문 연습문제 2) 리스트에 포함된 모든 숫자의 합을 계산하는 프로그램을 작성하기
numbers = [10, 20, 30, 40, 50]
total_sum = 0
# 출력예시
# 150
문제에서 total_sum이 0이라고 알려주었으므로 total_sum에 numbers 리스트를 순회하며 요소들을 하나하나 더하면 최종적으로 리스트에 포함된 모든 숫자의 합이 계산되겠다고 생각을 하게 되었다. 그래서 다음과 같이 코드를 짰다:
# 내가 작성한 코드
for num in numbers:
total_sum += num
print(total_sum)
근데 문제 힌트를 보면 print({total_sum})으로 되어있던데 이건 왜 그런거지? 왜 total_sum을 중괄호에 넣었을까? 아 이거 어디서 봤는데 f-string처럼 아예 변수 자체를 넣은걸까? 너무 어려워!
반복문 연습문제 3) 팩토리얼 계산해 보기
팩토리얼은 n! = n * (n-1) * (n-2) * ... * 1 로 정의되고, 0! = 1로 정의된다. 이때 문제에서 주어진 숫자에 대한 팩토리얼 결과를 계산하는 프로그램을 작성해보자.
number = 5
# 출력예시
# 120
이 문제를 보고 범위를 지정해서 반복하는 for 변수 in range(시작값, 끝값+1) 구문이 생각났다. 5!은 1~5까지의 숫자를 모두 곱하면 된다. 그렇기에 range( ) 안에 시작걊 = 1, 끝값 +1 = 5 +1 = 6 즉, (1,6)을 넣어 1부터 5까지 반복할 수 있도록 했다.
# 내가 작성한 코드
a = 1
for i in range(1,6):
a = a * i
print(a)
처음에는 5부터 4, 3, 2, 1 이렇게 내려오도록 곱하고 싶었는데 한계가 있었다. 그래서 어차피 해당 숫자 이하의 모든 정수를 곱하면 되는 것이기에 생각을 바꿔 위와같은 코드를 짰다. 거꾸로 내려오면서 곱해지는 코드도 짤 수 있도록 더 고민해봐야겠다.
'Data_10기' 카테고리의 다른 글
| Python 함수 실습 (0) | 2025.11.10 |
|---|---|
| Python 기본 문법 - 리스트부터 함수까지 (0) | 2025.11.07 |
| Python 라이브 세션 2,3회차 (0) | 2025.11.05 |
| SQL 라이브 세션 7회차 - WINDOW FUNCTION, WITH구문 (0) | 2025.11.04 |
| SQL 라이브 세션 5, 6회차 - JOIN (0) | 2025.11.03 |