[Python] 5강 - 순차 구조 및 제어 구조

2025. 4. 15. 00:55·공부/⚡Python

1. 제어 구조의 이해

(1) 제어 구조란?

 - 프로그램의 흐름(실행 순서)을 개발자가 의도한 대로 바꾸는 구조

 - 쉽게 말해, 프로그래밍 언어는 기본적으로 코드를 위에서 아래로 순차적으로 실행함.

 - 하지만, 때론 조건문이나 반복문을 통해 다르게 실행되거나 반복이 되어는 구조가 있음. 이것이 제어 구조임.

 

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

 - 절차적 프로그래밍 패러다임의 하위 개념

 - 프로그램을 명확하고 간결하게 작성하는 방법론이다.

 - 프로그램 흐름을 제어 구조를 이용해 세분화 및 모듈화 하는 방식을 강조하는 프로그래밍 패러다임이다.

 

(3) 구조적 프로그래밍 3가지 기본 구조

[1] 순차 구조 (Sequential Structure)

 - 순차 구조는 프로그램에서 명령어들이 위에서 아래로 차례대로 순차적으로 실행되는 구조이다.

 - 코드에서 제어 구조가 없을 때는 기본적으로 순차적으로 실행이 된다.

[2] 선택 구조 (Selection Structure)

 - (제어구조) 선택 구조는 조건에 따라 실행 흐름을 다르게 만드는 제어 구조이다.

 - 조건문을 이용해 어떤 조건을 만족할 때 특정 코드를 실행하거나 그 외의 경우 다른 코드를 실행하는 방식이다.

 - 대표적인 예로는 파이썬에 if / else / elif 예약어가 존재한다.

[3] 반복 구조 (Repetition Structure)

 - (제어구조) 반복 구조는 어떤 조건을 만족할 때까지 동일한 코드를 반복해서 실행하는 구조이다.

 - 반복문을 이용해 코드의 중복을 줄이고 효율성을 높일 수 있다.

 - 대표적인 예로는 파이썬에 for문과 while문이 있다.

 


2. 순차 구조

 - 실행의 흐름을 주어지는 명령의 위치적 흐름에 따라 수행하는 구조를 의미한다.

 - 명령 라인 위에서 아래로 흐르는 가장 직관적인 구조

 - 일단 첫 단계를 시작하면 마지막 단게까지 수행

 - 이러한 현실에서 사용되는 순차 구조를 프로그래밍 언어에 녹인것이다.

 

(1) 프로그래밍 에러

 - 순차적으로 프로그램이 실행되다 보면, 에러가 발생할 수 있다.

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

[1] 구문 오류(syntax error)

 - 문법 체계에 적합하지 않는 명령문 입력 시 발생

[2] 실행 오류(runtime error)

 - 논리적으로 실행 불가능한 명령문 작성 시 발생

[3] 의미 오류(semantic error)

 - 의미적으로 잘못 해석되는 명령문 작성 시 발생

 

(2) 파이썬 데이터 타입 변환

 - 파이썬에는 자료형(데이터 타입)을 입력하지 않고 변수를 선언해도 내부적으로 자료형을 넣어서 준다.

 - 즉, 파이썬에는 데이터 타입이 없는것이 아닌 생략이 가능한 것이다.

 - 쉽게 말해, input() 의 리턴 타입은 str 문자열 이며, 이 값을 int 정수와 더하게 된다면 오류가 발생할 것이다.

 - 파이썬에서는 int(), float() 함수를 활용하여 데이터 타입을 변환할 수 있다.

# 잘못된 코드
number = input() # 입력값의 리턴은 반드시 string(문자열) 형식으로 넘어온다.
print(number + 1) # 런타임 오류 발생 이유 : str과 숫자는 더할수없음.
# 올바른 코드
number = input()
number = int(number)
print(number + 1) # 결과값은 더한 정수값이 나옴. 문제발생 x
# 그 외 사용법 1
number = int(input())
print(number + 1)
# 그 외 사용법 2
number = input()
print(int(number) + 1)
# 등.. 다양한 사용법이 있음.

'공부 > ⚡Python' 카테고리의 다른 글

[Python] 7강 - 반복 구조  (0) 2025.04.17
[Python] 6강 - 선택 구조  (0) 2025.04.16
[Python] 4강 - 파이썬 시작하기  (0) 2025.04.14
[Python] 개인 컴퓨터에서 파이썬 설치 및 VS Code로 실행하기  (0) 2025.04.11
[Python] 3강 - 파이썬의 이해  (1) 2025.04.11
'공부/⚡Python' 카테고리의 다른 글
  • [Python] 7강 - 반복 구조
  • [Python] 6강 - 선택 구조
  • [Python] 4강 - 파이썬 시작하기
  • [Python] 개인 컴퓨터에서 파이썬 설치 및 VS Code로 실행하기
junbin2
junbin2
java.lang.NullPointerException
  • junbin2
    bin's Development Diary
    junbin2
  • 전체
    오늘
    어제
    • 전체보기 (233)
      • 방송통신대학교 (87)
        • ⚙️컴퓨터의 이해 (11)
        • 💻컴퓨터과학 개론 (15)
        • 🔢자료구조 (14)
        • 🧬알고리즘 (10)
        • ⚙️운영체제 (14)
        • 🕸️이산수학 (11)
        • 🌍유비쿼터스 컴퓨팅 (11)
        • 🖥️컴퓨터과학과 (1)
      • 공부 (72)
        • 📚백엔드 공부 (6)
        • ☕Java (23)
        • 🌳Spring (13)
        • ⚙️C (12)
        • ⚡Python (15)
        • JavaScript (1)
        • 🛢️Database (0)
        • Algorithm Problem Solving (2)
      • 네트워크 (7)
        • 📜HTTP (7)
      • 스파르타코딩클럽 (64)
      • 정보 (2)
      • 정리가 필요한 글 (1)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • GitHub
  • 공지사항

  • 인기 글

  • 태그

    방송통신대학교
    Python
    배열
    컴퓨터과학과
    컴퓨터의 이해
    함수
    컴퓨터과학 개론
    방통대
    방송대
    그래프
    유비쿼터스
    파이썬
    자료구조
    C언어
    자바
    Java
    spring
    이산수학
    운영체제
    알고리즘
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.1
junbin2
[Python] 5강 - 순차 구조 및 제어 구조
상단으로

티스토리툴바