[이산수학] 이산수학의 개요

 

✔️ 이산수학

  1. 이산수학(discreate mathematics): 이산적인 수학구조에 대해 연구하는 학문. 이산적인 값(0과 1)을 다루는 디지털 컴퓨터가 데이터를 처리하는 과정에 필요하다. 
  2. 연속수학(continuous mathematics): 연속적인 성질을 연구하는 수학. 미적분학, 위상수학 등이 여기에 속한다.
  3. 이산(discreate) : 불연속적인 상태를 나타내는 것. 연속(continuous) : 중단 또는 급격한 변화가 없는 상태

 

모델링과 추상화

문제 해결을 위한 수학

  1. 도구: 수학의 정의와 정리
  2. 기법: 근의 공식, 소거법, 일차연립방적식 등
  3. 방법론: 상황에 다라 가장 효과적이고 효율적으로 도구와 기법을 선택하는 것

수학적 모델링: 수학적 도구, 기법, 방법론을 이용해 문제 해결을 하기 위해 수학적 모델로 변화 시키는 과정

정보 모델링: 문제를 컴퓨터로 해결하기 위해 컴퓨터의 영역으로 옮기는 과정

추상화(abstraction): 문제와 관련된 핵심 내용만 남기고 관련없는 내용을 제거 또는 단순화 하는 것. 수학적 모델링, 정보 모델링 모두 추상화가 필요하다.

 

알고리즘

알고리즘(algorithm): 주어진 문제를 해결하기 위한 여러 동작들의 유한한 집합

: 알고리즘을 표현하는 언어

  1. 컴퓨터 프로그래밍 언어
    • 컴퓨터를 이용한 문제 해결에 있어 가장 적합하다.
    • 알고리즘의 중요한 핵심 요소가 잘 드러나지 않아 이해하기 어렵다.
    • 부차적인 표현에 신경써야 한다.
    • 통일된 언어가 존재하지 않는다.
  2. 순서도
    • 알고리즘의 작동방식을 도식화하여 전달한다.
    • 제어구조의 표현이 너무 자유로워 크기가 커지거나 복잡해지면 정확하게 표현하기 힘들다.
  3. 의사코드
    • 프로그래밍 언어를 흉내 내어 작성한 코드다.
    • 정확하고 구체적으로 표현하는 부분은 컴퓨터 프로그래밍 언어의 문법을 사용한다.
    • 구체적으로 표현할 필요가 없는 부분은 자연어를 사용한다.
    • 알고리즘의 작동 방식을 설명하는 용도로만 사용된다.

 

: 의사코드에서 사용되는 명령어

  1. 할당문: 값을 저장하기 위한 구문. 우변의 값이 좌변에 저장된다.
  2. 제어문
    • 순차문(sequence statement): 순차적으로 실행 된다.
    • 조건문(condition statement): 조건에 따라 서로 다른 구문을 수행한다.
      • if문
      • switch문
    • 반복문(iterative statement): 반복적으로 실행된다.
      • for문
      • while문
      • foreach문