-
[2일차 / 파이썬] 반복문, 조건문, ★별표로 특정 형태 만들기★파이썬 Python/파이썬 2022. 12. 27. 18:32
교재 <예제 중심의 파이썬 입문 - 황재호>
for문 : 반복 횟수가 정해져있음
whild문 : 반복 횟수가 정해져 있지 않음
문자열을 활용한 for문
words = 'tomorrowxtogether' for letter in words: print(letter, end='') ''' tomorrowxtogether '''
in range()
# 10회 반복 0 1 2 3 4 5 6 7 8 9 for i in range(10): print(i, end=' ') print() # 1부터 10까지 반복 1 2 3 4 5 6 7 8 9 10 for i in range(1, 11): print(i, end=' ') print() # 1부터 11까지 2씩 증가하며 반복 1 3 5 7 9 for i in range(1, 11, 2): print(i, end=' ') print() # 10부터 1까지 2씩 감소하며 반복 10 8 6 4 2 for i in range(10, 0, -2): print(i, end=' ') print()
1~10의 합 구하기
sum = 0 for x in range(1, 11): sum += x x += 1 print(sum) ''' 55 '''
1~100에서 3의 배수의 합 구하기
sum = 0 for i in range(3, 101, 3): print(i, end=' ') sum += i i += 1 print('\n', '-' * 10) print('1~100까지 3의 배수의 합 : {}' .format(sum)) ''' 3 6 9 12 15 18 21 24 27 30 33 36 39 42 45 48 51 54 57 60 63 66 69 72 75 78 81 84 87 90 93 96 99 ---------- 1~100까지 3의 배수의 합 : 1683 '''
반복문 & 조건문 - 짝수만 출력하기
for i in range(1, 11): if(i % 2 == 0): print(i, end =' ') ''' 2 4 6 8 10 '''
문자열을 거꾸로 출력하기
# 방법1 -> 나 혼자 작성한 코드 number = 12345 sNumber = str(number) length = len(sNumber) for i in range(length): print(sNumber[length-(i+1)]) # 방법2 number = 12345 for _ in range(5): print(number % 10) number = number // 10 # 방법3 number = 12345 while True: print(number % 10) number = number // 10 if(number == 0): break ''' 5 4 3 2 1 '''
5의 배수가 아닌 합계 구하기
# 4-1 num1 = int(input('시작 수를 입력하세요 : ')) num2 = int(input('끝 수를 입력하세요 : ')) print('-'*30) sum = 0 for x in range(num1, num2+1): if(x%5 != 0): sum += x print(sum) ''' 시작 수를 입력하세요 : 100 끝 수를 입력하세요 : 200 ------------------------------ 12000 '''
전화번호에서 하이픈(-) 삭제하기
# 4-2 phone = input('하이픈(-)을 포함한 11자리의 휴대폰 번호를 입력하세요:') for x in phone: if(x == '-'): continue else: print(x, end='') ''' 하이픈(-)을 포함한 11자리의 휴대폰 번호를 입력하세요:010-1234-5678 01012345678 '''
전화번호에 하이픈(-) 추가하기
# 4-3 전화번호에 하이픈 추가하기 phone = input('하이픈(-)을 뺀 11자리의 휴대폰 번호를 입력하세요 : ') count = 0 for x in phone: count += 1 if(count == 3 or count == 7): print(x, end='-') else : print(x, end = '') ''' 하이픈(-)을 뺀 11자리의 휴대폰 번호를 입력하세요 : 01011113333 010-1111-3333 '''
길이 단위 환산표 만들기
# 4-4 길이 단위 환산표 만들기 print('-'*50) print('센티미터(cm) 인치(inch) 피트(ft) 야드(yd)') print('-'*50) for cm in range(10, 201, 10): inch = cm * 0.393701 ft = cm * 0.032808 yd = cm * 0.010936 print('{} {:10.1f} {:10.1f} {:10.1f}' .format(cm, inch, ft, yd)) ''' -------------------------------------------------- 센티미터(cm) 인치(inch) 피트(ft) 야드(yd) -------------------------------------------------- 10 3.9 0.3 0.1 20 7.9 0.7 0.2 30 11.8 1.0 0.3 40 15.7 1.3 0.4 50 19.7 1.6 0.5 60 23.6 2.0 0.7 70 27.6 2.3 0.8 80 31.5 2.6 0.9 90 35.4 3.0 1.0 100 39.4 3.3 1.1 110 43.3 3.6 1.2 120 47.2 3.9 1.3 130 51.2 4.3 1.4 140 55.1 4.6 1.5 150 59.1 4.9 1.6 160 63.0 5.2 1.7 170 66.9 5.6 1.9 180 70.9 5.9 2.0 190 74.8 6.2 2.1 200 78.7 6.6 2.2 '''
무게 단위 환산표 만들기
# 4-5 무게 단위 환산표 만들기 print('-'*30) print('킬로그램(kg) 파운드(lb) 온즈(oz)') print('-'*30) for kg in range(10, 101, 5): lb = kg * 2.204623 oz = kg * 5.273962 print('{} {:8.1f} {:8.1f}' .format(kg, lb, oz)) ''' ------------------------------ 킬로그램(kg) 파운드(lb) 온즈(oz) ------------------------------ 10 22.0 52.7 15 33.1 79.1 20 44.1 105.5 25 55.1 131.8 30 66.1 158.2 35 77.2 184.6 40 88.2 211.0 45 99.2 237.3 50 110.2 263.7 55 121.3 290.1 60 132.3 316.4 65 143.3 342.8 70 154.3 369.2 75 165.3 395.5 80 176.4 421.9 85 187.4 448.3 90 198.4 474.7 95 209.4 501.0 100 220.5 527.4 '''
짝수 개수 세기
# 4-6 짝수 개수 세기 number = input('숫자를 입력하세요 : ') cnt = 0 for x in number: x = int(x) if(x%2 == 0 and x != 0): cnt += 1 print('숫자 중 짝수의 개수는 {}개' .format(cnt)) ''' 숫자를 입력하세요 : 3049894 숫자 중 짝수의 개수는 3개 '''
별표로 특정 형태 만들기1
for i in range(1, 11): print('*'*i, end='') print() ''' * ** *** **** ***** ****** ******* ******** ********* ********** '''
★★★★★ 별표로 특정 형태 만들기2 ★★★★★
for line in range(1, 11): for blank in range(10-line): print(' ', end='') for star in range(line): print('*', end='') print() ''' * ** *** **** ***** ****** ******* ******** ********* ********** '''
★★★★★ 별표로 특정 형태 만들기3 ★★★★★
for line in range(1, 10): for blank in range(10-line): print(' ', end='') for star in range(line*2-1): print('*', end='') print() ''' * *** ***** ******* ********* *********** ************* *************** ***************** '''
'파이썬 Python > 파이썬' 카테고리의 다른 글
[4일차 / 파이썬] ★2차원 리스트 (0) 2022.12.29 [4일차 / 파이썬] 리스트 - 삭제, 정렬, count (0) 2022.12.29 [3일차 / 파이썬] 반복문&조건문 연습 문제, ★소수 구하기 (0) 2022.12.28 [2일차 / 파이썬] - input(), %02d, 1일차 복습 (0) 2022.12.27 [1일차 / 파이썬] 파이썬 기본 문법 - 데이터형, 연산자, 슬라이싱, 포맷팅 (0) 2022.12.26