코딩하는 해달이

[프로그래밍 입문] 2주차 - 알고리즘 및 파이썬(2) 본문

USG 공유대학

[프로그래밍 입문] 2주차 - 알고리즘 및 파이썬(2)

코딩하는 해달 2023. 3. 12. 18:19

알고리즘 개요

알고리즘의 개념

▶ 특정 업무를 수행하기 위한 절차 또는 명령어의 집합

주어진 문제를 해결하는 데 필요한 방법과 절차를 순서대로 기술한 것

즉, 우리가 평소 사용하는 컴퓨터 프로그램은 알고리즘을 프로그래밍 언어를 이용하여 코드로 변환한 것을 의미

알고리즘의 설계

▶ 알고리즘을 설계할 때는 제어 구조를 이용

제어 구조는 알고리즘에서 명령의 실행 순서를 결정하는 구조로 순차 구조, 선택 구조, 반복 구조가 있음

  1. 순차구조
    • 문제를 해결하기 위해 가장 효율적인 방법을 찾아내는 과정
  2. 선택구조
    • 특정 조건을 만족하는지 여부에 따라 다음 명령을 선택하여 실행
  3. 반복구조
    • 어떤 문제를 해결하기 위해 같은 동작을 반복하여 실행

일상 생활 속 알고리즘

▶ 등교 알고리즘

  1. 알람 소리에 기상한다.
  2. 아침 식사는 간단한 빵 종류로 해결한다.
  3. 양치질과 세수를 한다.
  4. 날씨정보를 참고해서 옷을 고른다.
  5. 신발을 신고 자전거를 꺼낸다.
  6. 안전모를 착용하고 자전거 전용 도로를 이용해서 학교로 향한다.
  7. 학교에 도착하면 자전거를 자전거 거치대에 세운 후 학급으로 향한다.

수학 속 알고리즘

▶ 생년월일에 따른 만 나이 계산 알고리즘

  1. 기준년도에서 출생 연도 빼기
  2. 생일이 지났으면 추가 뺄셈을 하지 않고 지났으면 추가로 1을 뺌

▶ 1부터 100까지 정수의 합 구하기

  1. 규칙 발견하기
  2. 공식 만들기 - (1+마지막 정수)*(마지막 정수/2)
  3. 공식 적용하기 (1+100) * (100/2) = 101 * 50 = 5050

 

 

 

 

 

▶ 색칠한 부분의 넓이 구하기

▶ 거스름돈 계산하기

 - 물건의 금액을 계산하여 동전의 개수를 가장 적게 거슬러주기

순서도와 의사코드

순서도란?

▶ 다양한 기호를 사용하여 알고리즘을 표현한 것

▶ 순서도 역시 명확하고 실현 가능한 흐름으로 작성해야 함

순서도 기호

의사코드란?

▶ 순서도와 마찬가지로 알고리즘을 기술하기 위한 방법 중 하나

▶ 우리가 사용하는 자연어를 이용하여 프로그래밍 언어와 비슷하게 만든 코드이나 실제 컴퓨터에서 실행되지는 않음 

의사코드 예시

파이썬 개발환경

파이썬 이란?

▶ 네덜란드 개발자인 귀도 반 로섬이 1991년에 만든 프로그래밍 언어

▶ 구글은 자바와 함께 파이썬을 메인 언어로 채택하여 많은 서비스를 만들고 있음

파이썬의 특징

▶ 문법 구조가 쉬움

  • 다른 언어에 비해 문법 구조가 쉬움
  • 프로그램 개발, 수정, 실행 단계가 빠르고 프로그래밍 언어를 처음 배우는 사람도 쉽게 익힐 수 있음

▶ 무한 정수 처리 가능

  • 컴퓨터의 메모리 용량만 넉넉하다면 무한 정수를 처리할 수 있음
  • 따라서 다양한 산업과 과학 분야에서 복잡하고 어려운 계산도 잘 수행함

▶ 다양한 라이브러리 존재

  • 라이브러리란 특정 기능을 위해 미리 만들어 놓은 프로그램을 의미
  • 파이썬은 이미 개발자들이 만들어 놓은 많은 라이브러리 덕분에 우리는 좀 더 쉽고 빠르게 프로그래밍 가능
  • 라이브러리는 대체로 무료이며, 누구든지 특정 기능의 라이브러리를 만들어 배포할 수 있음

▶ 이미지 처리에 능숙함

  • 다른 언어에 비해서 상대적으로 이미지 처리를 쉽게 할 수 있음
  • 따라서 이미지 처리를 해야하는 많은 산업분야에서 파이썬을 이용

아이들(IDLE)

▶ IDLE은 Intergrated Development Environment의 약자로 통합개발환경을 의미함

즉 프로그램 개발에 필요한 모든 기능을 하나로 모아놓은 소프트웨어를 의미함

파이썬 셸코드 편집기라는 두가지 IDLE이 있음

 

파이썬 셸(shell)

▶ 파이썬 IDLE을 실행했을 때 나타나는 기본 툴

윈도우의 [시작]-[Python 3.8]-[IDLE(Python 3.8 32-bit)]를 클릭하여 파이썬을 실행하면 나타남

 셸 모드의 특징

  • 컴퓨터와 내가 채팅하듯이 코딩하는 방식임
  • 셸 모드는 화면에 코딩하고 결과를 바로 볼 수 있어 편리함
  • 주로 간단한 코드를 실행할 때 사용함
  • 셸 모드를 종료하려면 [File]-[Exit] 메뉴 또는 오른쪽 상단의 버튼을 클릭함 

코드 편집기

▶ [File] - [New File]을 클릭하면 흰색의 또 다른 편집기가 나옴

 코드 편집기는 셸 모드와 달리 코드를 파일 단위로 저장한 후 실행함

 주로 긴 코드를 실행할 때 사용함

 

컴파일러와 인터프리터

▶ 우리가 작성한 프로그램의 소스 파일은 대부분 영어로 이루어져 있으나 컴퓨터는 0과 1로 된 기계어만 사용함

따라서 프로그램을 실행하려면 인간의 언어(영어)를 컴퓨터가 이해할 수 있는 기계어로 변환이 필요

 주로 긴 코드를 실행할 때 사용함

 

//29:56

반응형
Comments