목록프로그래밍 (10)
완숙의 블로그
프로그래밍 사용자가 어떤 값을 컴퓨터에 넣고(입력) 처리한 결과를 사용자에게 다시 제공(출력)하는 것 graph LR; A[Input] --> B{Function} B --> C(Output) 입출력 함수 표준 입출력 함수: 키보드와 모니터를 통해 자료를 입출력 파일 입출력 함수: 특정한 파일을 통해 자료를 입출력 저급 입출력 함수: 운영체제 내, 시스템 호출을 통해 자료를 입출력 표준 입출력 함수 형식화된 입출력 printf() 함수 표준 출력 장치인 모니터로 자료를 출력 도스창에 실행결과를 표시할 때 사용 제어문자열 변환기호를 사용하여 형식에 맞게 출력 가능 예제 #include int main() { printf("%s\n", "종경"); printf("%s\n", "대학교"); printf("%s..
자료형 프로그램에서 선언된 변수들이 기억 공간에서 어떻게 저장되고 처리되어야 할지, 컴파일러에게 알려줌 종류 정수형 실수형 문자형 사용자 정의 자료형 정수형 소수점이 없는 숫자 음의 정수, 0 , 양의 정수 오버플로우(overflow) 데이터 허용 범위를 넘는 값을 변수에 저장할 때, 의도한 값이 아닌 다른 값이 저장되는 것 예제 #include int main(void) { short a = 32767, b=2, c; unsigned short d; c = a+b; d = a+b; printf("c = %d \n", c); printf("d = %d \n", d); return 0; } //프로세스가 시작되었습니다.. > c = -32767 d = 32769 언더플로우(underflow) 데이터 허용 ..
프로그램 실행 과정 graph LR A[원시함수 작성] --> |Compiler|B(오브젝트 파일 생성) B-->|Linker|C[실행파일 생성] Compiler : 고급 언어로 작성된 파일을 기계어로 번역해줌. Linker : 소스코드와 시스템 라이브러리 파일을 연결시킴. 목적 파일 여러개를 연결시켜 실행파일 하나를 생성함. 전처리기 #include // 시스템 헤더파일 # : 전처리기 지시자 .h : 헤더파일 시스템(컴파일러)에 있는 헤더파일 사용할 경우 사용 #include " 헤더파일명.h " // 사용자가 만든 헤더파일 사용자가 만든 헤더파일일 경우 "" 사용 함수 표현 int main(void) //자료형 입력 (void) { //함수내용 return 0; // 0이라는 ..
3D-Plot Bello- 영롱한 3차원 그래프! Intuition Concept 개념적인 내용이 없습니다! Function Plot3 x, y, z값이 있을 때 이를 그려준다. % Plot3 plot3(x,y,z, 'line specifiers', 'propertyName', property value) line specifiers; linewidth, linecolor etc property; markersize etcExample 1 Plot the data t = 0:0.1:6*pi; x = sqrt(t).*sin(2*t); y = sqrt(t).*cos(2*t); z = 0.5*t; plot3(x,y,z, ‘k’, ‘linewidth’, 1) grid on xlabel(‘x’); ylabel(‘..
Numerical Solution of Ordinary Differential Equations Bello- 암호를 이해하기 위해서는 ODE(나중에 포스팅 하겠ㅅ..)가 필요합니다. Intuition Concept 컴퓨터는 이산적인 값에서 작동하는 기계입니다. 우리의 정신세계에서 이상적인 선은 존재할 수 있지만 현실에서는 가산적인 점의 집합이 결국 선이겠죠. 연속적인 세계에서 정의된 해석적 미분방정식의 풀이 방법은 컴퓨터에서 적용할 수 없습니다. 그래서 우리는 이산적인 세계에서 미분방정식의 해를 검출할 수 있는 다른 방법이 필요합니다. ODE의 풀이는 생략하고 미분방정식의 꼴에서 부터 생각해보아요. (c = 항력계수) 떨어지는 물체가 있을 때, 종단속도에 관한 미분 방정식입니다. 직관적으로 보면 LHS ..
Numerical integration Bello-미분은 diff 함수를 사용하면 쉽게 할 수 있지만 적분은 구간이 필요하기 때문에 수치적으로 근사할 수 있는 방법이 필요해요. Intuition Concept (https://ko.wikipedia.org/wiki/적분#/media/File:Integral_example.svg) 이게 정적분이죠! 하지만 컴퓨터는 연속적인 값을 인식할 수 없기 때문에 (사실 점들의 집합이 선이긴 하죠) 이산적인 값에 대해서 이 값에 근사해야 합니다. 그 전에 이 정적분의 정의를 어떤 것에서 확장했었죠? 바로 구분구적법으로 나타냈었습니다. 고등학교 과정에서는 직사각형의 합의 형태로 나타내었지만 우리는 무한개의 사각형의 합으로 나타낼 수 없고 이산적 합의 형태로 나타내어야 하..
Finding a Minimum or a Maximum of a Function Bello- 그 귀찮은 방정식을 최대최소까지 찾아준대요! Intuition Concept 아까와 마찬가지로 컴퓨터의 반복계산과 Y,N를 사용해서 만든 알고리즘이에요. 하지만 비교의 개념이 들어가다보니 아까는 하나의 값을 넣어주었지만 이번에는 값을 범위화해서 넣어주어야 겠죠. 그리고 이번에는 최솟값을 구하는 함수 밖에 없어요. 최대값은 함수를 대칭시켜서 구합니다. Function [최대일때x 최댓값] = fminbnd(함수,x1, x2)여기서 함수는, f(x) = 0 의 형태로 만든 뒤에 사용해야 합니다. x1 과 x2 는 x1 < x2 관계에 있어야 합니다. Example 0 < x < 10 의 범위내에서 x^3 – 12*x..
Solving an Equation with One Variable 다항식의 근을 구하기 위해서는 다항식 로 가주세요. Bello- 그 귀찮은 방정식을 풀어준다니 멋지죠? 떠나보아요. Intuition Concept 컴퓨터가 생각하는(?) 방식은 절레절레와 노가다 밖에 없어요. 무슨말이냐면 Yes, No의 선택방식과, 계산을 계속하는 방법이 전부라는 의미죠. 멍청하다고 생각할 수 있겠지만 이것을 잘 활용하면 강점이 됩니다. 다항식의 근을 구하는 방법은 roots라는 함수를 사용하면 끝났었죠. 하지만 우리가 다루는 함수는 거기서 그치지 않기 때문에 다른 함수를 만들어야 합니다. 수학적으로 근이라는 것은 1개의 변수만 있는 함수 일때 x축과 만나는 점을 말합니다. 위의 그림 같은 경우는 3축을 통과하는 점이..