1 life 2 live
파이썬 기초 프로그래밍(4-1) - 반복문 (For 구문 및 실습 문제) [20.7.12] 본문
1. 반복문
■ 반복문의 필요성
º 구구단을 만들고 싶어졌다.
• 1*1, 1*2, .... , 1*9를 계산해보자!
• 구구단을 9단 까지 해보자!
º 동일한 혹은 유사한 행위를 반복적으로 수행 할 방법은 없는가? → 있다!
• for 반복문
• while 반복문
2. For 구문
■ 반복문의 개요
º 프로그램 흐름의 반복을 위한 문법
º 관계 연산자와 논리 연산자의 조합 활용
º 반복문 종류
• For 구문
• While 구문
■ 반복문 For
º 가장 기본적인 반복문
• 조건식이 참이면 특정 구간의 코드를 반복해서 수행하는 반복문
º For 구문의 조건?
• 값의 범위를 설정
• 현재 변수의 값이 특정 범위 내에 속하는지 평가!
º 리스트 기반의 범위 조건 설정
º range 함수를 이용한 범위 조건 설정
º 문자열(리스트) 기반의 for 구문 사용
º 의미: str이라는 변수에 저장되어 있는 문자열의, 각각의 문자에 대하여, 해당 문자를 출력하라!
º 리스트: [값1, 값2, ...., 값n]
• 값1에서 값n으로 이루어지는 값(숫자, 문자열 등)의 모임을 나타내는 구조
• 추후 자세히...
º ragne()기반의 for 구문 사용
• 시작: 범위의 시작 값
• 종료: 범위의 종료 값 (종료 값 자체는 포함되지 않는다!)
• 단위: 시작 값에서 종료 값으로 이동하는 단위
º 의미: <시작값>부터 <종료값-1>까지 <단위>만큼 증가하며 수행해라!
• 예1) 0부터 9까지 1씩 증가하면 숫자를 출력하라!
• 예2) 0부터 100까지 10씩 증가하면 "0~100%" 형태로 출력하라!
• 예3) 9단을 거꾸로 출력하라! (9부터 1까지 -1씩 증가하며 출력)
º 변형1) 단위의 생략 → (단위를 1로 생각한다)
º 변형2) 시작 및 단위의 생략 → (시작=0, 단위=1 로 생각한다)
º 예1) 0부터 9까지 1씩 증가하면 숫자를 출력하라!
º 예2) 9단을 출력하라!
3. 실습
■ 문제1) 사용자로부터 1~9사이의 숫자를 입력받고, 입력받은 숫자에 해당하는 구구단을 출력하기 위한 프로그램을 작성하시오
º For 구문의 리스트 형태 활용 해 볼 것!
↓정답
a = int(input('숫자를 입력하세요: '))
for i in range(1,10):
print('%d * %d = %d \t %d * %d = %d' % (a,i,a*i,a,10-i,a*(10-i)))
■ 문제2) 문자열 슬라이싱을 반복하는 프로그램을 작성하시오.
º 문자열의 길이는 len() 함수로 획득 할 수 있음
º 예) len('hello')는 5를 출력함.
º For 구문의 range() 형태 활용
↓정답
a = input('문자열을 입력하세요: ')
for i in range(1,len(a)+1):
print(a[:i])
■ 문제3) 팩토리얼을 계산하는 프로그램을 작성하시오.
º 팩토리얼 n!은 1부터 n까지의 정수를 모두 곱한 것을 의미한다. 즉, n! = 1×2×3×……×(n-1)×n이다.
↓정답
a = int(input('숫자를 입력하세요: '))
b= 1
for i in range(1,a+1):
b *= i
print('%d!의 값은 %d입니다' %(a,b))
'파이썬' 카테고리의 다른 글
파이썬 기초 프로그래밍(5-1) - 자료구조1 (리스트) [20.7.14] (0) | 2020.07.14 |
---|---|
파이썬 기초 프로그래밍(4-2) - 반복문 (While 구문, Break, Continue 및 실습 문제와 정리 [20.7.13] (0) | 2020.07.13 |
파이썬 기초 프로그래밍(3-2) - 조건문(관계/논리 연산자), 실습 문제와 정리 [20.7.11] (0) | 2020.07.11 |
파이썬 기초 프로그래밍(3-1) - 조건문(관계/논리 연산자) [20.7.10] (0) | 2020.07.10 |
파이썬 기초 프로그래밍(2) - 문자열 및 수학함수 그리고 연습문제와 정리[20.7.9] (0) | 2020.07.09 |