기본적인 연산자
다음 표에 기본적인 Scilab연산자를 정리하였다. Scilab의 기본 객체는 ‘행렬’이므로 피연산자도 일반적으로 ‘행렬’이다.
[표 1] 기본 연산자
연산자 | 기능 |
+ | 덧셈(이항연산자), +부호(단항연산자) |
- | 뺄셈(이항연산자), -부호(단항연산자) |
* | 곱셈 |
.* | 요소간 곱셈 |
.*. | Kronercker 곱셈. kron(A,B)와 동일 |
/ | 나눗셈 |
\ | 역나눗셈 (즉 a\b 는 b를 a로 나눈다) |
./ | 요소간 나눗셈 |
.\ | 요소간 역나눗셈 |
./. | Kronecker 나눗셈 |
.\. | Kronecker 역나눗셈 |
^ 또는 ** | 거듭 제곱 |
.^ | 요소간 거듭 제곱 |
‘(작은따옴표) | 복소 전치 행렬 |
.’(점작은따옴표) | 단순 전치 행렬 |
이 표에서 보면 요소간 연산자가 있는데 이것은 행렬 간 연산에서 같은 요소끼리의 연산을 수행한다. 예를 들어서 두 행렬 A, B에 대해서 A*B는 보통의 행렬곱으로 A의 열수와 B의 행수가 같아야 성랍하지만 A.*B 는 같은 위치의 요소끼리 곱셈을 수행하므로 A와 B의 크기가 같아서 수행된다. 예제는 행렬에 대해서 알아볼 때 들겠다.
대입문을 작성할 때 tuple을 사용하여 한 번에 여러 변수를 지정하는 것이 가능하다. tuple 은 괄호 ( ) 를 사용하는데 각각의 요소는 반드시 comma (,)로 구분해야 한다. 이 기능을 사용하면 변수들을 서로 swap하는 데도 간결하게 사용할 수 있다.(이 기능은 python과 흡사하다.)
아래에서 첫 번째 예가 변수 u, v 그리고 w 를 동시에 생성하는 것이다. 좌변에는 [ ... ] 를 우변에서 tuple을 지정할 때는 ( ... ) 를 사용했음에 유의해야 한다, 두 번째 예는 u와 v의 값을 서로 맞바꾸는 것이다.
내부 상수들
다음 표에 미리 정의되어 사용되는 내부 상수들을 정리하였다. 이 변수들은 모두 %로 시작하며 사용자가 덮어 쓸 수 없다.(즉, 재정의될 수 없다.)
[표 2] Scilab의 기정의된 내부 상수들
변수명 | 의미 |
%i | 허수 () |
%e | 자연상수 (2.718281…) |
%pi | 원주율 (3.142592…) |
%eps | 표현가능한 가장 작은 수(약 2.2e-16) |
%inf | 무한대 |
%nan | not a number |
%t or %T | (논리적) 참 |
%f or %F | (논리적) 거짓 |
%s | 다항식 s=poly(0,’s’) |
%z | 다항식 s=poly(0,’z’) |
%io | 표준 I/O |
Scilab의 식별자에서 ‘%’를 사용할 수 있는데 맨 첫자로만 사용가능하다. 따라서 위의 상수들은 모두 특정 값이 저장되어 있고 변경할 수 없는 변수와 같이 취급된다.
'프로그래밍언어.Lib > Scilab' 카테고리의 다른 글
싸이랩(scialb)의 복소수 입력 (0) | 2015.06.17 |
---|---|
싸이랩(scialb)의 숫자 자료형 (정수형과 실수형) (0) | 2015.06.17 |
싸이랩(scialb)의 기본(base) 작업공간과 전역(global) 작업공간 (0) | 2015.06.17 |
싸이랩(scialb)의 폴더 관련 명령어와 변수들 (0) | 2015.06.17 |
싸이랩(scialb)의 대입문과 식별자 (0) | 2015.06.17 |