N이 주어질때, 1이상 N이하의 소수를 오름차순으로 출력하는 프로그램을 작성해라
1. 1부터 N이하의 값들 하나하나를 2부터 n까지의 각 숫자들을 나누어 나머지가 0인 값이
있다면 -> 소수가 아님
없다면 -> 소수임.
2. is_prime이라는 bool type 변수를 만들어 초기값을 True, 단 한번이라도 나누어 떨어지는 순간에 is_prime값을 false로 설정해줌. 이를 통해 1부터 n사이의 소수를 전부 구할 수 있게 된다.
* 단 한번이상 나타날때 bloon 변수를 활용해주는 것이 좋다.
# 변수 선언 및 입력
n = int(input())
# 1부터 n까지 소수를 구합니다.
for i in range(1, n + 1):
if i == 1:
continue
isprime = True
for j in range(2, i):
if i % j == 0:
isprime = False
if isprime:
print(i, end=" ")
문제 출처 : 코드트리
https://www.codetree.ai/trail-info
반응형
'Python > 코딩테스트' 카테고리의 다른 글
배열 - 특정 수 도달하기 (0) | 2025.03.04 |
---|---|
배열 - 기본 개념(리스트 slicing/append/pop/len) (0) | 2025.03.04 |
다중반복문 - 완전 수 (0) | 2025.03.04 |
다중반복문 - M번에 걸친 3N + 1 수열에서 N이 1이되는데 걸리는 횟수 (0) | 2025.03.04 |
다중반복문 - ab곱 N번 구하기 (0) | 2025.03.04 |