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 |