본문 바로가기

공부

matlab(매틀랩) programing 강의 180328 @함수식 을 쓰는 것도 하나의 방법이다. >> fminbnd(@cos,0,4) 0부터 4까지 코사인 값이 최소를 갖는 값ans = 3.1416 >> [x y] = fminbnd(@cos,0,4)x = 3.1416 y = -1.0000 fplot(@함수, [구간]) : 구간에 해당하는 함수 그래프를 그린다. 구간이 없을시 디폴트 구간 [ -5 5 ]에 그린다. ----참거짓 논리 참 1 거짓 0 1>0 -> ans = 1 1보다 0이 크다는 수식을 입력하면 참이기 때문에 1이 출력된다. >> x=[ 3 6 9 ]>> y = [ 3 9 5 ]>> x(x> x(x>=y)ans = 3 9 >> x=-2:2; k=(abs(x)>1)k = 1 0 0 0 1 A = 8 9 1 9 6 5 -1 -1 10 >> eye(..
matlab(매틀랩) programing 강의 180326 2015b 버전 기준 fzero(변수) : f(x)=0인 점을 구하는 구문>> fzero(@cos,0) -> 근을 찾아줌ans = -1.5708 -->> A = randi(5,3,4)A = 5 5 2 5 5 4 3 1 1 1 5 5 >> sortrows(A,2)ans = 1 1 5 5 5 4 3 1 5 5 2 5 >> sortrows(A,-2) -> 2열을 기준으로 내림차순 정렬ans = 5 5 2 5 5 4 3 1 1 1 5 5 >> sortrows(A,[2 -3])ans = 1 1 5 5 5 4 3 1 5 5 2 5 복소수를 이용할 땐 복소수에 붙은 게 y축 상수가 x축에 들어가는 수식이라고 생각하면 간단하다.매틀랩에선 i나 j를 별다른 입력 없이 쓰면 복소수 취급한다. 1+j = √(2)*e(j*p..
matlab(매틀랩) programing 강의 181321 이 강의는 2015b버전을 기준으로 작성됨 sort에 대해서 배웠는데 관련 함수로 sortrows가 존재한다. >> A=randi(10,3,4)A = 9 10 3 10 10 7 6 2 2 1 10 10 >> sort(A)ans = 2 1 3 2 9 7 6 10 10 10 10 10 >> sort(A,1)ans = 2 1 3 2 9 7 6 10 10 10 10 10 >> sort(A,2)ans = 3 9 10 10 2 6 7 10 1 2 10 10 인데sortrows(A) 첫번째 열을 기준으로 행을 정렬한다. 이는 지정된 오름차순으로 정렬하고 나머지 열은 그 열이 바뀌는 것에 따라간다. 즉 특정 열을 기준으로 행을 정렬한다고 보면 된다. >> A=randi(10,3,4)A = 9 8 7 1 10 8 2 3..
matlab(매틀랩) programing 강의 180319 이 강의는 2015b 버전을 기초로 만들어짐 randi(a,m,n) 1부터 a까지 mxn개의 개수 랜덤 발생e) randi([-10 10],3,3) -10부터 10까지 사이의 개수에서 3x3 행렬 생성 지금부터 할 건 잘 숙지해두지 않으면 나중에 헷갈리거나 까먹을 수 있다. A = 10 9 5 2라 할 때 A를 한 열로 정리하고 싶으면>> A(:)ans = 10 5 9 2 A의 n번째 수와 m번째 수까지 표시 이를 보면 배열의 번호는1 32 4이렇게 매겨지는 것을 알 수 있다. >> A(2:3)ans = 5 9>> A(1:3)ans = 10 5 9 2열만 표시>> A(:,2)ans = 9 2 >> A(:,1:2) : A의 행은 관계없이 1부터 2열까지 표시ans = 10 9 5 2 >> B=randi([..
matlab(매틀랩) programing 강의 180314 이 강의는 2015b버전을 기초로 만들어짐 매틀랩으로 함수식 풀기 6x 12y 4z = 707x-2y 3z=52x 8y-9z = 64란 함수식이 있으면 a=[6,12,4;7,-2,3;2,8,-9];b=[70;5;64];solution=a\b라고 해주면 각 변수의 값이 나온다. disp(A) : A의 내용을 표시 매틀랩에서 작동하는 계산 스크립트 같은 경우에 쓰인다.e) disp('this is a text problem') x=input('Enter your number')input은 사용자가 변수를 입력하게 해준다.[ 3 5 4 ] 이런식으로 입력하면 배열로 입력이 가능하다. 어떤 물건을 위로 vo의 속도로 던졌을 때 떨어지는 시간을 t_drop이라 한다. g는 중력가속도v0=input('v0=');g..
matlab programing 강의 180312 해당 강의는 2015b 버전을 기초로 합니다. 0:10 length(ans) ans = 11 0:10은 0부터 10까지 1의 간격을 가진 배열을 생성ans는 가장 최근의 계산된 변수 값length(변수)는 해당 변수의 길이를 계산 A' 이라고 하고 숫자를 넣으면 열로 받는다. size(변수)는 벡터의 크기 행,열로 표시1 2 3 43 4 5 8>> size(ans)ans = 2 4 매틀랩의 인덱스는 1부터 시작 sin(30/180*pi) = sin(30도)asin(0.5) = 0.5236 ≒ 1/6*pi ans/pi*180ans = 30.0000 명령어cd - 해당 경로 배웠던 것을 이용해서 표 그리기 x=-2*pi:0.05:2*pi;y=sin(x);y2=sin(2*x);plot(x,y)title('si..
matlab programing 강의 180307 메틀랩은 수식을 계산해주는 프로그램처음부터 시작하시는 분들 보면 좋아요. ;를 수식 뒤에 붙이면 화면에 결과를 띄워주지 않는다.식간의 구분은 enter 또는 ,로 할 수 있다.ans는 가장 최근 계산된 값이 저장되는 변수이다.i,j는 식에 사용했을 시에 복소수로 취급된다.clear : 변수에 저장된 값을 지우는 명령어clc : 화면에 표시된 텍스트를 전부 지우는 명령어exist : 변수의 내용들을 확인시켜주는 명령어quit : 프로그램 종료시키는 명령어who : 메모리에 저장된 변수를 보여줌whos : 변수들에 대한 자세한 내용 출력 e) whos('a')dir 현재 경로의 모든 파일들 리스트 ( 보통 스크립트 저장해둔 것 )pwd 현재 경로 표시path 매틀랩 search path 표시 ... : 줄을..
[C++] 스왑 함수 로직 temp = x;x = y;y = temp; 논리 자체는 간단하다. 서로 값을 가지고 있는 x,y의 값을 바꾸기 위해서x를 일단 또다른 변수에 저장해놓고 x에 y값을 대입하고 y값에 x값을 저장해둔 또다른 변수를 대입하는 것이다. 포인터와 레퍼런스에서 스왑은 예로 많이 들어가는데 차이점을 보자. 일반int swap( int x, int y){int temp;temp = x;x = y;y = temp; }포인터 int swap( int *x, int *y){int temp;temp = *x;*x = *y;*y = temp; }레퍼런스 int swap( int &x, int &y){int temp;temp = x;x = y;y = temp; }일반과 포인터/레퍼런스 스왑의 차이점은 일반 함수로 매개변수를 받..