본문 바로가기

IT7

[C] 변수 C에서 뿐만 아니라 변수는 프로그래밍에서 매우 중요한 개념 중 하나입니다. 사실 따지고 보면 너무나도 기본적인 개념이라 이미 알고 계신 분들이 많을 것이라 생각하지만, 그래도 한 번은 이야기 해보려고 합니다. 1. 변수의 개념 변수는 하나의 상자와 같은 개념이라고 생각하시면 됩니다. 상자안에 우리가 저장하고 싶은 것을 저장하고, 언제든지 꺼내서 사용할 수 있도록 하는 것이 변수의 개념입니다. 그림과 같이, 프로그램에서 printf("%d", A); 를 통해서 변수 A의 값을 요청했습니다. 이후 변수 A에 저장되어있는 값을 받아서 102를 출력할 수 있게 됩니다. 2. 변수 선언 변수는 바로바로 사용할 수 있는 개념이 아닙니다. 물론 바로바로 사용해도 되는 언어가 있긴 한데.. C는 그렇지 않습니다. (깐.. 2022. 12. 28.
[인공지능] 인공지능 기초 - Gradient Descent 인공지능은 스스로 Parameter를 조정하여 정답을 만들어낸다. 이 때, Parameter를 조정하기 위해서는 Optimize(최적화)를 해야 하는데, Optimize에서 쓸 수 있는 방법들을 Optimizer라고 한다. 오늘은 Optimizer의 가장 기본 중의 기본인 Gradient Descent(경사하강법)에 대하여 알아볼 것이다. 1. Gradient Descent (경사하강법) 먼저 아래와 같은 이차 함수 그래프를 보자 이 그래프에서 현재 x가 -5라고 가정하자. 우리는 y를 최소로 하고 싶다면 어떻게 해야 하겠는가? 그렇다. x를 0으로 바꾸면 된다. 그러나, 우리들이 이 함수가 이차함수 y = x^2임을 모르거나, 해석하기 어려울 정도로 복잡한 함수라면? 우리들이 알 수 있는 것은 접선의 .. 2022. 12. 27.
[C] Main 함수 Main 함수는 매우 중요한 함수이다. C에서 Console Program을 만들 때, 없어서는 안 될 함수가 Main 함수이다. Main 함수는 다음과 같다. int main() { // Code.. // Code.. return 0; } Main 함수는 대체로 위와 같은 형식을 가지고 쓰여지는데, 가끔 아래와 같이 Void 형으로 쓰기도 한다. void main() { //code //code return; } 요즘에는 int를 자주 쓰므로, 만약 자신이 void를 쓴다면 int로 넘어가는 연습을 해보도록 하자. Main 함수는 말 그대로 'Main'이라 프로그램이 이 함수를 중심으로 동작한다. Main 함수가 끝나면 프로그램이 끝나게 되어있고, Main 함수가 끝나지 않는다면 프로그램이 끝나지 않는.. 2022. 12. 27.
[Deep Learning] 인공신경망 요즘 세상은 인공지능 시대다. 특히 인공지능 중 Deep Learning 분야는 생물의 신경망을 모사하여 마치 생각하는 것과 같은 효과를 낼 수 있게 된다. Deep Learning 분야가 굉장히 다양한 곳에서 쓰이는 만큼 Neural Networks(인공신경망)의 종류도 매우 다양하게 쓰인다. 대개 인공신경망은 종류에 따라 사용에 적합한 데이터라던지, 적합한 상황이 있기 때문에 자신이 Deep Learning을 활용한 인공지능을 만들고 싶다면, 알맞은 인공신경망을 구성할 필요가 있다. 오늘은 이를 위해 다양한 인공신경망의 구조를 알아보고자 한다. 위는 다양한 인공신경망을 그려놓은 그림이다. 여기서 우리들은 우리가 자주 쓸만한 인공신경망 몇 가지를 간단하게 알아볼 것이다. 다루지 않은 인공신경망도 언젠가.. 2022. 12. 27.
[c][알고리즘] n-Queen n-Queen 알고리즘은 n by n의 체스판에 Queen을 n개 놓을 때, 각 Queen이 서로를 위협하지 않는 자리에 있을 수 있는 경우의 수를 구하는 알고리즘이다. Q Q Q Q Q Q Q Q 위의 표는 4 by 4의 체스판에 Queen이 4개 놓일 수 있는 경우의 수로 왼쪽과 오른쪽 두 가지를 제외하면 없다. 따라서 n-Queen 알고리즘에서 4에 해당하는 값은 2이다. n 결과 값 0 1 (n이 0이기 때문에 Queen이 놓여지지 않아도 답으로 취급) 1 1 2 0 3 0 4 2 0~4에 해당하는 값으로, 어렵지 않게 생각할 수 있다. n-Queen Algorithm 실습 코드 부터 보자 #include #include int Queen(int n, int t, int *board); int c.. 2022. 12. 26.
[C] include 전처리기 - include 전처리기는 말 그대로 '전'에 '처리'되는 것이다. 다양한 전처리기가 있지만, 오늘은 include를 알아보도록 하자. #include 는 자주 보지 않았는가? 이는 stdio.h 라는 헤더 파일을 사용하겠다고 선언하는 것이다. *헤더 : 함수, 변수 등을 포함한 파일, 자세한 건 나중에 stdio.h는 Standard Input/Output으로 입출력에 관한 다양한 함수, 변수 등을 가지고 있는 헤더이다. 우리는 이러한 함수들을 #include 를 사용하여 프로그램에서 사용할 수 있게 된다. 그러니까, 간단하게 이야기하면 Include 은 파일명에 해당하는 파일을 내 프로그램에서 쓰겠다고 선언하는 것이다. #include 에는 사용법이 두가지가 있다. #include 와 #i.. 2022. 12. 26.
[C] printf 함수 함수 printf(const char* Format, ...); 헤더 파일 stdio.h 의미 console 화면에 문자열을 출력한다. 응용 서식자 등의 다양한 활용이 가능 활용 printf("Hello, World!"); -> Hello, World printf("국어 : %d점, 수학 : %d점", 90, 65); -> 국어 : 90점, 수학 : 65점 문자열을 출력해주는 기본적인 함수이다. C 배울 때 가장 처음으로 배우는 함수이다. 서식자 서식자를 지정하고, 추가 인수를 전달함으로서 다양한 활용이 가능하다. 서식자에는 다음과 종류를 자주 사용한다. 서식자 출력 출력예시 %d 정수 출력 12 %f, %lf 실수 출력 - (%f는 float 자료형, %lf는 double 자료형이나, 출력에는 상관없음.. 2022. 12. 26.