Translate

이 블로그 검색

2010년 11월 6일 토요일

Help for Number Mania (한국어)

수 매니아


버전 : 2.0β


프로그램 개요 :
수와 관련된 세 가지 메인 기능을 제공합니다.

단위 환산 – 양과 질에서 기존의 단위 환산기와는 다른 차별화된 기능을 제공합니다.
– 다양한 범주의 수를 DB화하여 보여 주고 계산 기능과 연계됩니다.
계산 – 기존의 계산기 어플과는 개념과 차원을 달리한 계산 기능들을 제공합니다. (변수 상수 지원, 복소수 및 행렬 계산 등)


사용 방법 :


1. 단위 환산
단위 버튼을 누르면 단위 유형 목록이 나타납니다. 원하는 단위 유형을 선택합니다. 최대 24개의 단위가 표 형태로 나타납니다. 기준 단위를 터치합니다. 그러면 기준 단위를 1(또는 0)로 했을 때의 다른 단위들의 값을 계산하여 보여 줍니다.

기준 단위의 값을 1(또는 0)이 아닌 다른 값으로 하고 싶으면 기준 단위를 길게 누릅니다. 그러면 값 입력 창이 나타납니다. 값을 입력하고 확인 버튼을 누르면 기준 단위를 입력한 값으로 하고 그에 해당하는 다른 단위들의 값을 계산하여 보여 줍니다.

2. 수
수 버튼을 누르면 수의 범주별로 탭이 나타나고 첫 번째 탭의 범주에 해당하는 수들이 목록으로 표시됩니다. 목록의 각 항목은 두 줄로 되어 있습니다. 윗 줄에는 이름과 기호가 표시됩니다. 아랫 줄에는 값과 단위가 표시됩니다. 이름과 기호를 잘 보아 두었다가 계산 기능을 사용할 때, 변수 입력 창에서 불러 오기 위해 사용할 수 있습니다.

항목을 길게 누르면 값이나 기호를 클립보드에 복사할 수 있는 메뉴가 나타납니다. 여기서 복사한 내용은 계산 기능의 수 입력 상자에 붙여 넣을 수 있습니다. 물론 다른 어플에도 붙여 넣을 수 있습니다.


* 직접 내장된 DB의 데이타를 수정하기를 원하는 사용자들을 위하여 단위 화면 및 수 화면에서 메뉴을 누르면 단위와 수를 수정할 수 있는 다이얼로그가 나타납니다. 수정(추가 포함) 및 삭제를 하실 수 있습니다. 단위의 경우 온도는 고정이므로 수정할 수 없습니다. 또한 수의 경우에는 범주의 추가 및 삭제는 지원되지 않습니다.

3. 계산
세 가지 입력 화면
계산 버튼을 누르면 계산기 화면으로 전환됩니다. 기본 화면은 수를 입력하거나 모드를 바꾸기 위해 사용되는 수 입력 화면입니다. 위에서 두 번째 줄에 있는 문자 입력 상자를 터치하면 문자 입력 화면으로 바뀝니다. 끝으로 수 입력 화면의 f(x) 버튼을 누르면 함수 입력 화면으로 바뀝니다.

수 입력 상자와 문자 입력 상자
계산기 화면의 맨 윗 줄은 수 입력 상자로 수를 직접 입력받습니다. 변수나 문자 상수를 입력하려면 두 번째 줄의 문자 입력 상자를 사용합니다. 문자 입력 상자를 터치하면 문자 입력 상자에 입력 포커스가 이동하고 화면 하단의 버튼들이 문자 입력 버튼들로 바뀝니다. 한글을 사용하여 문자 상수를 찾으려면 문자 입력 상자를 길게 눌러 주십시요.

문자 입력 상자에서 변수는 @로 시작하는 영숫자입니다. 그 외에 다른 문자를 입력하면 미리 정의된 문자 상수들을 자동 완성 기능을 사용하여 입력할 수 있습니다. 자동 완성 목록에서 선택을 하면 바로 수 입력 상자로 입력되고 화면도 수 입력 화면으로 돌아 갑니다. = 버튼을 눌러도 같은 기능을 합니다. 그러나 CL 버튼을 누르면 모든 입력을 취소하고 수 입력 화면으로 돌아 갑니다.

자동 완성 목록은 다음 문자 입력을 위하여 약 1.5초 동안만 보여지고 사라집니다. 문자 입력 상자를 터치하면 보이기와 숨기기를 교대로 합니다.

수 입력 상자 편집
수 입력 상자를 편집하기 위해 커서를 이동할 수 있습니다. 수 입력 상자의 왼쪽을 터치하면 왼쪽으로, 오른쪽을 터치하면 오른쪽으로, 앞쪽을 터치하면 맨앞, 끝쪽을 터치하면 맨끝으로 이동합니다.

함수 사용 방법
수 입력 화면에서 f(x) 버튼을 누르면 화면 하단의 버튼들이 함수 입력 버튼들로 바뀝니다. 함수를 선택하면 선택된 함수명이 바로 수 입력 창으로 입력되고 화면도 수 입력 화면으로 돌아 갑니다.

수식 사용 방법
수 입력 화면에서 수식 버튼을 누르면 몇 가지 미리 입력된 수식들을 볼 수 있습니다. 이 수식들의 표현법을 눈여겨 보셨다가 직접 수식을 입력할 때 참고하여 주십시오. 수식을 터치하고 선택 버튼을 누르면 수식이 수 입력 창에 입력됩니다. 이 상태에서 = 버튼을 누르면 첫 번째 변수부터 값 입력을 요청하는 @변수명 = ? 가 표시됩니다. 값을 입력하고 = 버튼을 누르면 변수에 값이 대입됩니다. 모든 변수 입력을 이와 같이 하고 마지막 = 버튼을 누르면 계산이 수행됩니다.

계산 결과 표시
계산 결과는 기본적으로 복소수로 표시됩니다. 허수부가 없거나 매우 작으면 실수부만 표시됩니다. Eng 모드에서는 소수점 3자리의 지수 형식으로 표시됩니다. Fix 모드(기본 모드)에서는 지수 형식을 사용하지 않고 표시합니다. Fix 모드에서는 너무 작은 수는 0으로 표시됩니다. (이 때 Eng 버튼을 누르면 바로 Eng 모드로 변환하여 보여줍니다.)

계산에 사용되는 각도의 기본 단위는 Deg 입니다. Rad 버튼을 누르면 다음 계산부터 Radian을 사용합니다. 수 입력 상자에 표시되는 계산 결과는 직각좌표형식의 복소수입니다만 문자 입력 상자에 극좌표형식의 복소수로도 동시에 표시되므로 좀 더 편리하게 결과를 확인할 수 았습니다. ans 버튼을 누르면 바로 직전의 결과값을 불러 옵니다.

통계 기능
통계를 위한 별도의 함수들은 제공되지 않습니다. 그러나 기본적인 통계치 계산은 이력 관리 기능을 이용하여 할 수 있습니다. 모든 계산 결과는 이력으로 저장되므로 이력 버튼을 눌러 이력 관리 창을 띄운 후 예전 이력들을 전체 삭제한 후 새로 수들을 입력한 후 이력 관리  창에서 통계 버튼을 누르면 기본적인 통계치들을 계산하여 보여 줍니다.

4. 행렬 계산
* 제약 사항 : 1) 현재 실 행렬만 지원합니다. 복소 행렬은 추후 지원할 예정입니다. 2) 함수의 합성은 지원하지 않습니다. 이 또한 추후에 지원할 예정입니다.

행렬 모드
계산 화면의 우측 상단에 “->행렬” 버튼을 누르면 행렬 모드로 전환됩니다. 다시 한 번 누르면 일반 (스칼라) 모드로 돌아옵니다.

행렬의 입력
행렬을 입력하는 세 가지 방법이 있습니다.

첫 번째 방법은 이력 기능을 사용하는 것으로 다음과 같이 합니다. 먼저 수 또는 수식을 입력하고 Exec 버튼을 누릅니다. 그러면 하나의 요소가 이력으로 저장됩니다. 이와 같이 만들고자 하는 행렬의 모든 요소를 입력합니다.

그리고 이력 버튼을 눌러서 이력 관리 다이얼로그을 띄운 후 우측 하단에 있는 행렬 버튼을 누릅니다. 행렬 저장 다이얼로그에서 이름(영숫자) 그리고 행과 열의 개수를 입력 후 저장 버튼을 누르면 하나의 행렬이 DB에 저장됩니다. 행렬 이름에는 행렬을 나타내기 위한 # 문자가 자동으로 붙어서 저장되므로 나중에 사용할 때는 #을 붙여서 사용하기 바랍니다.

두 번째 방법은 직접 수 입력 상자에 입력하는 방법으로 다음과 같이 합니다.
예) #a=[1,2,3;4,5,6;7,8,9]
행렬 이름을 먼저 입력하고 = 기호를 입력 후 대괄호 안에 수 또는 수식을 입력합니다. 열의 구분은 ,로 하고 행의 구분은 ;으로 합니다.

세 번째 방법은 외부로부터 *.csv 파일을 불러오는 방법입니다. 단, 이 방법을 사용하려면 먼저 /sdcard/NumberMaina 폴더에 *.csv 파일이 미리 만들어져 있어야 합니다. (일반 텍스트 에디터를 사용하여 만드시면 됩니다.) f(x) 버튼을 눌러 함수 입력 화면으로 전환 후 우측 하단의 file 버튼을 누르면 파일 관리 다이얼로그가 나타납니다. 원하는 파일을 선택하여 가져오기 버튼을 누릅니다.

그 외에 다음의 방법으로 두 행렬을 행 또는 열 방향으로 합칠 수 있습니다.
(행 방향 합침)#f=[#d;#e]
(열 방향 합침)#c=[#a,#b]

함수 사용 방법
eye : 하나의 인수를 받아 항등 행렬을 생성합니다.
(예. eye(3) 또는 #i3=eye(3))
zeros : 하나 또는 두 개의 인수를 받아 모든 요소가 0인 행렬을 생성합니다.
(예. zeros(4,3) 또는 #z3=zeros(3))
ones : 하나 또는 두 개의 인수를 받아 모든 요소가 1인 행렬을 생성합니다.
(예. ones(4,3) 또는 #one3= ones(3))
rand : 하나 또는 두 개의 인수를 받아 난수로 구성된 행렬을 생성합니다.
(예. rand(4,3) 또는 #rand3= rand(3))
reshape : 기존 행렬의 행과 열(크기)를 변경하여 새로운 행렬을 생성합니다.
(예. #b=reshape(#a,4,3))
diag : 기존 행렬의 대각 요소들로 구성된 열 벡터를 생성합니다.
(예. #c1=diag(#a))

: 기존 행렬의 전치 행렬을 생성합니다.
(예. #at=#a’) (주의: 이 때 행렬들의 요소는 식으로 취급하므로 값으로 Eval되지 않습니다. 값으로 Eval하려면 아래 Eval함수를 추가적으로 사용하여야 합니다.)
inv : 역 행렬을 구합니다.
(예. #ainv=inv(#a))
det : 행렬식을 구합니다.
(예. det(#a))
size : 행렬의 크기를 2x1 행렬로 구합니다.
(예. size(#a))
rank : 행렬의 계수를 구합니다.
(예. rank(#a))
norm : 행렬 또는 벡터의 2-노름을 구합니다.
(예. norm(#a))

lu : 정사각형 행렬의 LU 분해을 실행합니다.
(예. [#al,#au]=lu(#a))
qr : m>=n인 행렬의 QR 분해을 실행합니다.
(예. [#aq,#ar]=qr(#a))
eig : 행렬의 고유값 분해를 실행합니다.
(예. [#av,#ad]=eig(#a))
svd : 행렬의 특이값 분해를 실행합니다.
(예. [#au,#as,#av]=svd(#a))
chol : 행렬의 Cholesky 분해를 실행합니다.
(예. #al=chol(#a))
roots : 벡터(mx1 또는 1xn 행렬)의 요소들을 계수로 하는 다항식의 근들을 구합니다.
(예. roots(#poly)

exp : 행렬 지수 함수를 실행합니다.
(예. exp(#a))
^ : 행렬 거듭제곱 함수를 실행합니다.
(예. #a^3)
dot : 두 벡터의 내적을 구합니다.
(예. dot(#v1,#v2))
cross : 두 3차원 벡터의 외적을 구합니다.
(예. cross(#v1,#v2))
trace : 행렬의 대각합을 구합니다.
(예. trace(#a))
eval : 행렬의 요소들을 평가합니다. 즉 수식으로 되어 있는 요소들을 값으로 계산합니다.
(예. eval(#a))

db : 내장 db에 저장된 행렬을 관리하기 위한 다이얼로그를 띄웁니다. 삭제, 이름 변경, 내보내기를 할 수 있습니다.
file : 외부 메모리(경로는 /sdcard/NumberMania)에 저장된 *.csv file을 관리하기 위한 다이얼로그를 띄웁니다. 삭제, 조회, 가져오기를 할 수 있습니다.

댓글 없음:

댓글 쓰기