-
[3일차 / 파이썬] 반복문&조건문 연습 문제, ★소수 구하기파이썬 Python/파이썬 2022. 12. 28. 11:28
교재 <예제 중심의 파이썬 입문 - 황재호>
2023년 1월 달력
#나의 답안 print('2023년 1월') print('-'*20) print('일 월 화 수 목 금 토') print('-'*20) count = 0 for x in range(1, 32): print('{:2d} ' .format(x), end='') count += 1 if(count == 7): print() count = 0 ''' 2023년 1월 -------------------- 일 월 화 수 목 금 토 -------------------- 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 '''
#강사님의 답안을 참고하여 수정한 버전 #count를 선언할 필요x print('2023년 1월') print('-'*20) print('일 월 화 수 목 금 토') print('-'*20) for x in range(1, 32): print('{:2d} ' .format(x), end='') if(x % 7 == 0): print()
별표로 특정 형태 만들기2
- 높이를 직접 지정해주는 형태 (n에 input() 사용하면 됨)
n = 10 for i in range(1,n+1): for _ in range(n-i): print(' ', end='') for _ in range(i): print('*', end='') print() ''' * ** *** **** ***** ****** ******* ******** ********* ********** '''
테두리 형태의 사각형
#나의 답안 h = 8 for line in range(1, h+1): if(line == 1 or line == h): print('* '*h, end='') else: print('*', end='') print(' '*(2*h-3), end='') print('* ', end='') print() ''' * * * * * * * * * * * * * * * * * * * * * * * * * * * * '''
# 강사님 예시코드 for x in range(8): if(x == 0 or x == 7): for _ in range(8): print('*', end='') print() else: for i in range(8): if(0<i<7): print(' ', end='') else: print('*', end='') print() ''' ******** * * * * * * * * * * * * ******** '''
1~100까지 수 중 홀수의 합 구하기
sum = 0 n = 100 for i in range(1, n+1): if(i%2 != 0): sum += i if(i+2 > n): temp = '=' else: temp = '+' print('{} {} '.format(i, temp), end='') print('{}'.format(sum)) ''' 1 + 3 + 5 + 7 + 9 + 11 + 13 + 15 + 17 + 19 + 21 + 23 + 25 + 27 + 29 + 31 + 33 + 35 + 37 + 39 + 41 + 43 + 45 + 47 + 49 + 51 + 53 + 55 + 57 + 59 + 61 + 63 + 65 + 67 + 69 + 71 + 73 + 75 + 77 + 79 + 81 + 83 + 85 + 87 + 89 + 91 + 93 + 95 + 97 + 99 = 2500 '''
★★★★★ 수식의 결과값 구하기 ★★★★★
# p.172 n = int(input('N의 값을 입력하세요 : ')) sum = 0 for i in range(1, n+1): temp = ((2*i)**(2*i-1)) sum += temp print('n의 값 : {}'.format(n)) print('합계 : {}' .format(sum)) ''' N의 값을 입력하세요 : 6 n의 값 : 6 합계 : 744010475682 '''
★★★★★ 1~Num 중 소수 구하기 ★★★★★
#8 예시답안 n = int(input('N값을 입력해주세요: ')) for num in range(2, n): count = 0 # 2 ~ num 중 나누어떨어지는 숫자가 있는지 확인 for i in range(1, num+1): if num%i == 0: count += 1 # 소수 if count == 2: print('{} '.format(num), end='') ''' N값을 입력해주세요: 200 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109 113 127 131 137 139 149 151 157 163 167 173 179 181 191 193 197 199 '''
★ ★ ★ ★ ★ ★ ★ ★ ★ ★
2부터 시작하는 자연수의 집합에서 소수의 합이 1,000,000 이상이 되는 직전의 소수는?
★ ★ ★ ★ ★ ★ ★ ★ ★ ★
# 나의 코드 total = 0 k = 2 while True: num = k count = 0 for i in range(1, num+1): if num%i == 0: count += 1 if count == 2: if(total < 1000000): total += num else: print(num) break k += 1
# 예시코드 sum1 = 0 k = 2 while True: num = k # 소수 판별 count = 0 # 초기화 for i in range(1, num+1): if num%i == 0: count += 1 # 합계 로직 if count == 2: sum1 += num if (sum1 >= 1000000): print(num) break k += 1
'파이썬 Python > 파이썬' 카테고리의 다른 글
[4일차 / 파이썬] ★2차원 리스트 (0) 2022.12.29 [4일차 / 파이썬] 리스트 - 삭제, 정렬, count (0) 2022.12.29 [2일차 / 파이썬] 반복문, 조건문, ★별표로 특정 형태 만들기★ (0) 2022.12.27 [2일차 / 파이썬] - input(), %02d, 1일차 복습 (0) 2022.12.27 [1일차 / 파이썬] 파이썬 기본 문법 - 데이터형, 연산자, 슬라이싱, 포맷팅 (0) 2022.12.26