파워 파이썬/컴퓨팅 사고

컴퓨팅 사고 구성요소(분해)

상선약수64 2026. 1. 21. 13:41

1. 분해란 무엇인가?

   분해(Decomposition)란 복잡하고 한 번에 해결하기 어려운 문제를 의미 있는 작은 단위의 문제들로 나누어 생각하는 사고 과정이다. 사람은 복잡한 문제를 그대로 마주하면 전체 구조를 이해하기 어렵지만, 문제를 여러 개의 부분 문제로 나누면 각 부분을 차례대로 이해하고 해결할 수 있다. 컴퓨팅 사고에서 분해는 문제 해결의 출발점에 해당한다.


2. 생활 속 분해 사례

   일상속에서도 분해의 사례가 많다. 예를 들어 "오늘 효율적인 하루를 보내고 싶다"라고 했을때, 이 문제는 매우 추상적이고 막연하지만 분해를 하면 구체적인 계획과 실행을 할 수 있다. 
    이 문제를 분해를 한 번해보자. 큰 문제를 작게 나누면 구체적으로 실행 계획을 수립할 수 있다. 

  • 오전에 해야 할 일은 무엇인가?
  • 오후에 해야 할 일은 무엇인가?
  • 개인 시간은 언제 확보할 것인가?
  • 꼭 해야 할 일과 선택적인 일은 무엇인가?

 

3. 시각적으로 이해하는 분해

   하나의 큰 문제 즉 여러 기능의 복잡한 프로그램을 여러 개의 하나의 문제를 나누고, 각 단계가 모여 전체 문제를 해결할 수 있다. 분해는 문제를  “쪼개는 것”이 목적이 아니라, 이해하고 해결 가능하게 만드는 것이 목적이다.

문제의 분해(참조. 문제해결을 위한 컴퓨팅 사고와 파이썬, 한빛아카데미, 김지연 저)

 

 

 
 
 

4. 성적처리를 위한 분해 사례 및 파이썬 코드 예시

“학생들의 시험 성적을 분석하고 싶다.”

 

    먼저 위의 문제를 해결하기 위해서 작은 단위를 분해를 한다. 독립적인 작은 문제로 나누면 프로그래밍으로 쉽게 구현 할 수 있다.

    주석을 보고 각 단계별 코드를 이해하세요. 

  1. 학생들의 점수를 저장한다
  2. 평균 점수를 계산한다
  3. 최고 점수와 최저 점수를 찾는다
  4. 합격 기준 이상(평균이상)인 학생 수를 계산한다

 

 

  • 파이썬 코드 예시

 

결과

 

5. 정리

  • 분해는 복잡한 문제를 해결 가능한 작은 문제로 나누는 사고 과정이다.
  • 생활 문제, 학습 문제, 데이터 분석, 프로그래밍 모두에 적용된다.
  • 분해가 잘 이루어질수록 알고리즘 설계와 코딩은 쉬워진다.

 


분해는 컴퓨팅 사고의 첫 단계로, 문제 해결의 방향을 결정하는 가장 중요한 사고 과정이다.