[Lecture/Python] 05강 - 순차 구조

김찬미·2025년 5월 2일

[Lecture] Python

목록 보기
5/13

5강 요약: 순차 구조

✅ 제어 구조의 이해

구조적 프로그래밍 패러다임

  • 절차적 프로그래밍 패러다임의 하위 개념
  • goto문을 사용하지 않고 프로그램을 3가지 제어 구조만으로 구성

🔸 종류

  • 순차 구조
  • 선택 구조
  • 반복 구조

프로그램 실행 흐름이 간결하고 작은 규모로 조직화하기 쉬움


순차 구조

실행의 흐름을 주어지는 명령의 위치적 흐름에 따라 수행
→ 명령 라인 위에서 아래로 흐르는 가장 직관적인 구조


선택 구조

특정 영역 내의 명령문에 대한 실행 여부를 프로그램 실행 과정 중 결정하는 구조
→ 실행 여부는 조건에 따라 결정


반복 구조

특정 명령의 명령문을 여러 번 재실행하는 구조
→ 반복 횟수는 조건에 따라 결정


✅ 순차 구조

실행의 흐름을 주어지는 명령의 위치적 흐름에 따라 수행
→ 명령 라인 위에서 아래로 흐르는 가장 직관적인 구조
일단 첫 단계를 시작하면 마지막 단계까지 수행


삼각형 출력하기

다음과 같이 삼각형 모형으로 *를 출력하는 프로그램을 작성하시오

   *  
  ***
 *****
*******
print("   *")
print("  ***")
print(" *****")
print("*******")

사용자 입력

input(): 사용자로부터 데이터를 입력받는 함수
→ 입력 데이터를 문자 데이터 타입으로 반환
→ 함수의 파라미터는 입력 안내문의 목적으로 사용

rad = input( )
rad = input("반지름을 입력하세요:")
	# 입력 대기 후 입력값 반환

프로그래밍 에러

설계 미숙, 결합 또는 문법 오류로 프로그램이 의도한 대로 결과를 생성하지 못하는 문제

🔸 에러 종류

  • 구문(syntax error) 종류:
    • 문법 체계에 적합하지 않은 명령문 입력 시 발생
    • ex) )를 쓰지 않음
  • 실행(runtime error) 오류:
    • 논리적으로 실행 불가능한 명령문 입력 시 발생
    • 0을 나누는 행위
  • 의미(semantic error) 종류:
    • 의미적으로 잘못 해석되는 명령문 작성 시 발생
    • 실행은 정상적으로 되지만, 원하는 결과값이 아님

데이터 타입 변환

데이터 타입을 다른 타입으로 변환

  • str 함수: 문자열 타입으로 변환
  • int 함수: 정수 타입으로 변환
  • float 함수: 소수 타입으로 변환

원뿔 계산 프로그램 개선

사용자로부터 반지름과 높이를 입력받고 계산

🔹 알고리즘

  • 부피 =13πr2h= \frac{1}{3} \pi r^2 h

  • 겉넓이 =πr2+πrh= \pi r^2 + \pi r h

🤔 오류가 발생하는 구문

#반지름 사용자 입력
rad = input("반지름을 입력하세요:")
#높이 사용자 입력
hei = input("높이를 입력하세요:")
#부피 계산
vol = 1/3 * 3.14 * rad ** 2 * hei

print(vol)

💡 원인과 개선

# 반지름 사용자 입력
rad = int(input("반지름을 입력하세요:"))  # int로 형변환

# 높이 사용자 입력
hei = int(input("높이를 입력하세요:"))

# 결과값 출력
print("부피의 값은 ", 1/3 * 3.14 * rad ** 2 * hei, "입니다", sep="")
print("겉넓이의 값은 ", 3.14 * rad ** 2 + 3.14 * rad * hei, "입니다", sep="")
반지름을 입력하세요:5
높이를 입력하세요:10
부피의 값은 2616.6666666666665입니다
겉넓이의 값은 392.5입니다

💡 기억할 점

  • 함수를 중첩해서 사용
  • 여러 개의 파라미터를 받을 수 있는 print 함수

여러 개의 데이터를 단일 함수로 출력 가능
→ 콤마(,)로 파라미터를 구분하여 입력
→ 데이터 사이에 공백(기본값)이 자동으로 추가
sep 옵션을 변경하여 공백 변경 가능

print("원뿔의 부피는 ", vol, "입니다.", sep="")
profile
백엔드 지망 학부생

0개의 댓글