본문 바로가기

프로그램/MATLAB

【MATLAB】 if~elseif 구조 sign 함수 M-파일 개발 문제풀이

반응형
-Chapra의 응용수치해석 3판 예제 3.4

[문제]

Q. 스칼라에 대하여 MATLAB의 내장함수인 sign 함수는 인수의 부호에 따라 (-1, 0, 1)의 값을 넘겨준다. 다음은 이 함수가 MATLAB에서 어떻게 수행되는지를 나타낸다.


같은 기능을 수행하기 위한 M-파일을 개발하라.


[문제풀이]

이번 문제는 if ~ else if 구문으로 쉽게 풀이할 수 있습니다.


먼저, 사용자가 값을 입력하기 위해 input 함수를 사용했습니다. (교재 풀이는 함수풀이인데, 저는 input이 편해서 사용했습니다.)


결과는 위와 같이 출력되었습니다. 아무래도 한국인이다보니 한글이 더 편하게 받아들여지네요.

참고로 sign 함수의 설명은 다음과 같습니다.


직역하자면, 입력한 x가 0보다 크면 1을, 0보다 작으면 -1을 출력한다고 합니다. 그리고 추가로, sign(X) = X ./ abs(X). 와 같다고 합니다. 당연히 X값에 그 절대값을 나눠주면 부호와 1만 남게되죠. 이상!



반응형
LIST