오늘은 알고리즘/순서도/프로그래밍 개념/디버깅 개념에 대하여 설명해보겠습니다
"알고리즘" 이란?
→ 튜링 기계에 의해 수행 가능한 프로시저를 의미합니다
알고리즘 정의
→ 문제를 해결하거나 함수를 계산하기 위해 따라가야 할 모호함이 없는 간단한 명령들로 구성된 일련의 순서적 단계입니다
알고리즘 유형
→ 수열, 배열, 수학, 자료구조, 응용 등 다양한 유형이 존재합니다
알고리즘 요건
→ 외부에서 1개 이상의 입력을 받아들여, 1개 이상의 출력을 생성하여야합니다.
→ 각 단계가 단순하고 모호하지 않아야한다.
→ 한정된 수의 작업 이후에는 반드시 "종료"되어야 합니다
→ 모든 명령이 "수행 가능"한 상태여야합니다
→ "효율적" 이어야 합니다
순서도(Flow Chart)
→ 알고리즘의 대표로 가장 많이 사용합니다
→ 순서도를 이용하면 알고리즘의 구조를 한눈에 파악하기 아주 용이합니다
→ 순서도란, 미리 정해진 기호를 이용하여 그려지는 그림으로 논리적인 절차를 표현하는 방법중 하나입니다
→ 순서도를 이용하면 전체적인 구조가 한눈에 들어오기때문에 논리적절차를 위한 알고리즘을 표현하기 위한 방법으로 많이 사용합니다
순서도의 작성방법
→ 물이 위에서 아래로 흐르듯이 윗부분에서 아래로 차례대로 그려 나가야합니다
(경우에 따라서 시작, 끝을 정하고 시작하여도 됩니다.)
프로그래밍의 주요 개념
→ 논리의 전개를 의미합니다
→ 해결하고자하는 문제들을 질서정연하게 나열한 문장으로 순서도를 이용하는경우 순서도의 흐름을 따라서 작성합니다.
→ 즉, 순서도를 작성할때 나오는 것들을 if문 for문 등 다양한 프로그래밍 언어를 이용하는것 자체를 "프로그래밍"한다고 말을 한다고 생각하시면 됩니다
변수
→ "절차적" 프로그래밍 언어에서 프로그램의 값을 움직이는 "주체"입니다
→ 굳이 수학으로 X, Y 정도가 될것같네요.
상수
→ 변수중에서 값이 변하지 않고 "항상 똑같은 값을 가지는 수"를 의미합니다
치환
→ 값을 변수에 넣는 행위 자체를 말합니다 (아주 중요한 개념입니다)
X=100 인 경우 X에 100이라는 값이 들어가는데 수학과 다름점이 =이 "같다"라는 의미가 아니고
"=의 오른쪽에 있는값을 =의 왼쪽에 있는값에 데이터를 넣어라"라는 의미라는 점에서 치환이라고 합니다
→ 프로그래밍에서 같다라는 의미는 "="가 아닌 "=="입니다.
디버깅
→ DE+BUG : 벌레를 없애다
→ 프로그램 안의 오류를 없애는 작업을 말합니다
→ 프로그램을 하면서 오류를 찾는 작업을 통틀어서 "디버깅" 한다고 말합니다
고생하셨습니다
C언어에 더 알고 싶다면?
👉C언어 마이크로 소프트 Visual Studio 2019 설치방법은?
👉C언어로 구사하는 알고리즘 1. 날짜값을 넣으면 해당 요일이 나오는 코딩 예제(윤년계산)
👉C언어로 구사하는 알고리즘 2. 형변환 그레이코드를 만드는 알고리즘
'코딩 이야기' 카테고리의 다른 글
[C언어] 정수 오름차순/내림차순을 구현하는 알고리즘(SORT) (0) | 2021.07.13 |
---|---|
[C언어] 성적 석차 구하기 알고리즘 구현하기 (0) | 2021.07.11 |
[C언어] 형변환 그레이코드를 만드는 알고리즘 (0) | 2021.07.11 |
[C언어] 날짜값을 넣으면 해당 요일을 출력하는 코딩예제 (윤년) (0) | 2021.07.04 |
[C언어] 마이크로 소프트 Visual Studio 2019 설치방법 (0) | 2021.07.04 |