GnuSmalltalkUsersGuide:BaseChapter 077

From 흡혈양파의 번역工房
Revision as of 07:20, 27 January 2014 by Onionmixer (talk | contribs) (GSUG Float 페이지 추가)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
Float

Float

네임스페이스 Smalltalk에 정의됨

슈퍼클래스: Number

범주: 언어-데이터 타입


나의 인스턴스들은 임의의 정밀도를 가진 부동 소수점 수를 표현한다. 표준 수치 연산 외에 초월 연산(transcendental operation)도 제공한다. 또한 하드웨어가 지원할 경우 IEEE-754를 올바로 구현한다.


Float 클래스: 바이트 순서 의존성

signByte

부호 비트를 포함하는 수신자의 바이트를 응답하라.


Float 클래스: 특성화

denormalized

수신자의 인스턴스가 비정규화된(denormalized) 형태가 될 수 있는지 응답하라.

e

e의 값을 리턴하라. 정밀도가 충분하길 바란다.

epsilon

1 + x ~ = 1에서 가장 작은 Float x를 리턴하라.

fmin

> 0에 해당하는 가장 작은 Float를 리턴하라.

fminDenormalized

비정규 값을 지원할 경우 >0에 해당하는 가장 작은 Float을 리턴하고, 그 외에는 0을 리턴하라.

ln10

ln 10의 값을 리턴하라. 정밀도가 충분하길 바란다.

log10Base2

log2 10의 값을 리턴하라. 정밀도가 충분하길 바란다.

pi

pi의 값을 리턴하라. 정밀도가 충분하길 바란다.

radix

수신자의 인스턴스들 간 계산이 이루어지는 밑(base)을 응답하라. 알려진 컴퓨터라면 2 에 해당하므로 GNU Smalltalk는 항상 2 를 응답한다.


Float: 산술

integerPart

수신자의 정수 부분을 리턴하라.

negated

수신자의 부정(negation)을 리턴하라. 0-self와 달리 이는 부호가 있는 0(signed zero)을 올바로 변환한다.

raisedToInteger: anInteger

self의 anInteger 거듭제곱값을 리턴하라.


Float: 기본

hash

수신자에 대한 해시값을 응답하라.


Float: built-ins

arcCos

수신자의 아크코사인을 응답하라.

arcSin

수신자의 아크사인을 응답하라.

arcTan

수신자의 아크탄젠트를 응답하라.

ceiling

양의 무한대(+infinity)로 자른(truncated) 수신자의 정수 부분을 응답하라.

cos

수신자의 코사인을 응답하라.

exp

수신자에 'e' (2.718281828459...)제곱한 값을 응답하라.

floor

음의 무한대(+infinity)로 자른(truncated) 수신자의 정수 부분을 응답하라.

ln

밑(base)이 'e'인 수신자의 로그값을 응답하라 (2.718281828459...).

primHash

Private - 수신자에 대한 해시값을 응답하라.

raisedTo: aNumber

수신자의 aNumber 거듭제곱값을 응답하라.

sin

수신자의 사인을 응답하라.

sqrt

수신자의 제곱근을 응답하라.

tan

수신자의 탄젠트를 응답하라.


Float: 강제 유형 변환하기

asExactFraction

수신자를 최적 근사값, 보통은 큰 표현식(terms)을 이용해 분수로 변환하라.

asFraction

수신자를 양호한(하지만 정의되지 않은) 근사값의 분수로 변환하라.

truncated

수신자를 Integer로 변환하라. LargeIntegers에만 사용되며, 다른 경우에 사용되는 프리미티브도 있다.


Float: 강제 유형 변환

asCNumber

수신자를 C call-out 메커니즘이 이해하는 유형의 숫자로 변환하라.


Float: 비교하기

max: aNumber

수신자와 aNumber 간 최대값을 응답하라. self 또는 aNumber가 NaN인 경우 항상 그 값을 응답하도록 확보하는 데 필요하다면 서브클래스에서 재정의하라.

min: aNumber

수신자와 aNumber 간 최소값을 응답하라. self 또는 aNumber가 NaN인 경우 항상 그 값을 응답하도록 확보하는 데 필요하다면 서브클래스에서 재정의하라.

withSignOf: aNumber

aNumber의 부호에 일치하도록 변경되었을 가능성이 있는 부호를 가진 수신자를 응답하라.


Float: 인쇄하기

printOn: aStream

수신자의 표현을 aStream 상에 인쇄하라.


Float: 보관하기

isLiteralObject

수신자를 스몰토크 리터럴로 표현 가능한지 응답하라.

storeLiteralOn: aStream

수신자로 컴파일하는 스몰토크 코드 일부를 aStream 상에 보관하라.

storeOn: aStream

수신자의 표현을 aStream 상에 인쇄하라.


Float: 검사하기

isFinite

수신자가 무한대나 NaN을 나타내지 않는지를 응답하라.

isInfinite

수신자가 양의 무한대나 음의 무한대를 표현하는지 응답하라.

isNaN

수신자가 NaN을 응답하는지를 응답하라.

negative

수신자가 음으로 되었는지 응답하라.

positive

수신자가 양으로 되었는지 응답하라. 음의 0은 양이 아니므로 >= 0처럼 단순한 정의가 아니겠다.

sign

수신자가 0보다 큰 경우 1을 응답하고, 0보다 작으면 -1, 그 외에는 0을 응답하라. 음의 0은 양의 0과 같다.

strictlyPositive

수신자 > 0 인지 여부를 응답하라.


Float: 기능 검사하기

isFloat

'true'를 응답하라.


Float: 초월 연산

asFloat

완전성(completeness)을 위해 정의되었다. 수신자를 리턴하라.

ceilingLog: radix

(self log: radix) 상한값(ceiling)을 응답하라.

estimatedLog

(self abs floorLog: 10)의 추정값(estimate)을 응답하라.

floorLog: radix

(self log: radix) 하한값(floor)을 응답하라.

log

수신자의 로그 밑(log base) 10 을 응답하라.


Notes