1 life 2 live

파이썬 기초 프로그래밍(4-1) - 반복문 (For 구문 및 실습 문제) [20.7.12] 본문

파이썬

파이썬 기초 프로그래밍(4-1) - 반복문 (For 구문 및 실습 문제) [20.7.12]

대희투 2020. 7. 12. 21:01

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))

728x90
반응형
Comments