절차적사고
소프트웨어 코딩의 목적은 "보다 효율적인 알고리즘의 정리" 라고 생각합니다. 예를 들어 보겠습니다. 문제. 1부터 100까지 의 합을 구하시오 위와 같은 문제가 주어졌을 때 우리는 여러가지 방법을 생각해 볼 수 있습니다. 첫째, 1부터 100까지 누적하면서 하나씩 더해…
소프트웨어 코딩의 목적은 "보다 효율적인 알고리즘의 정리" 라고 생각합니다. 예를 들어 보겠습니다. 문제. 1부터 100까지 의 합을 구하시오 위와 같은 문제가 주어졌을 때 우리는 여러가지 방법을 생각해 볼 수 있습니다.
첫째, 1부터 100까지 누적하면서 하나씩 더해본다.,. 1 = 1 1 + 2 = 3 3 + 3 = 6 . . . . 4950+100 = 5050 위 방법처럼 말이지요.. 두번째, 공식을 화용한다.
n(n+1)/2 = 100(100+1)/2 = 5050 첫번째와 두번째 방법의 결과는 같습니다. 두가지 모두 순서와 절차가 명확한 알고리즘이라고도 할수 있지요 하지만 알고리즘의 목적인 효율성면에서 두번 째 방법이 좀더 낳은 방법이라 할 수 있습니다.
위의 예는 1786년 독일의 한 초등학교 3학년 교실에서 있었던 일이며 그 주인공은 바로 천재수학자 "가우스"의 일화 이기도 합니다. 초등학교 3학년 학생이 100년도 넘는 아주 오래전에 저런 생각을 했다는 것이 경이롭기 까지 합니다.
천재이기에 가능했던 일 일수도 있습니다. 하지만 어떠한 문제를 구조화 하며 절차적이로 바라보는 시각을 연습하면 불가능한 일도 아닙니다. 지금 이 시간에도 많은 프로그래머 들은 좀더 효율적이며 혁신적인 알고리즘을 위해 연구하며 본인의 소스를 정리합니다.
소프트웨어가 세상의 일부 가 된지는 오래 되었습니다. 그 일부가 전부가 되어가는 과정이 4차 산업혁명이라 불리우는 시대 이며 우리 아이들이 맞이할 미래는 그 점유율이 더 높아 질 것입니다. 이러한 현실 속에서 우리 아이에게도 이러한 소프트웨어적 사고를 키워 준다면 코딩이 지배할 미래 컴퓨팅 세계에서 역량있는 인재로 거듭날 수 있으리라 생각 됩니다.
어린 자녀를 둔 부모님 계시다면 꼭 한번 해봐도 좋은 놀이 하나 소개합니다. 샌드위치 알고리즘 이라고 불리우는 외국 유튜버 영상입니다. ㄴ
다소 사소하게 보일 수도 있는 식빵에 잼 발라 먹는 일도 만약 사람이 아닌 로봇으로 대체하여 같은 일을 한다면 로봇에게 코딩으로 명령을 주어야 가능한 일 입니다. 다시말해, 알고리즘을 구현하여 로봇에게 명령을 주어야 가능 한 일 입니다.
이상, 로봇앤 코딩 이었습니다. 아이들에게 생각의 기회를 제공하고 노력하겠습니다.
이 글은 네이버 블로그에 먼저 올렸던 글을 옮긴 것입니다.
로봇&코딩학원은 서울 송파구 석촌동 274-8 2층에 있습니다. 수업 상담은 전화로 받습니다.
상담 전화 02-422-0525