衢州網(wǎng)站建設(shè)需要多少費(fèi)用國內(nèi)網(wǎng)絡(luò)營銷公司排名
文章目錄
第二十章 ObjectScript 應(yīng)用程序中的數(shù)值計(jì)算 - 轉(zhuǎn)換:十進(jìn)制到 $DOUBL
E
$DOUBL
E 轉(zhuǎn)換:十進(jìn)制到 $DOUBLE
注意: 建議應(yīng)用程序顯式控制十進(jìn)制和 $DOUBLE
格式之間的轉(zhuǎn)換。
到 $DOUBLE
格式的轉(zhuǎn)換是通過 $DOUBLE
函數(shù)顯式完成的。此函數(shù)還允許通過表達(dá)式 $DOUBLE(<S>)
顯式構(gòu)造非數(shù)字和無窮大的 IEEE
表示,其中 <S>
是:
- 字符串
nan
生成NaN
- 任意字符串
inf
、+inf
、-inf
、infinity
、+infinity
或-infinity
(表示無窮大)。 - 數(shù)字和字符串分別為
-0
和-0
注意:輸入時(shí)忽略字符串 <S>
的大小寫。輸出時(shí),僅生成 NAN
、INF
和 -INF
。
轉(zhuǎn)換:$DOUBLE
到十進(jìn)制
注意: 建議應(yīng)用程序顯式控制十進(jìn)制和 $DOUBLE
格式之間的轉(zhuǎn)換。
$DOUBLE
形式的值使用 $DECIMAL
函數(shù)轉(zhuǎn)換為十進(jìn)制值。調(diào)用該函數(shù)的結(jié)果是一個(gè)適合轉(zhuǎn)換為十進(jìn)制值的字符串。
注意:雖然此描述假設(shè)提供給 $DECIMAL
的值是 $DOUBLE
值,但這不是必需的??梢蕴峁┤魏螖?shù)值作為參數(shù),并且相同的規(guī)則適用于舍入。
$DECIMAL(x)
該函數(shù)的單參數(shù)形式將作為其參數(shù)給出的 $DOUBLE
值轉(zhuǎn)換為十進(jìn)制。 $DECIMAL
將數(shù)字的小數(shù)部分四舍五入為 19
位。 $DECIMAL
始終四舍五入到最接近的十進(jìn)制值。
$DECIMAL(x, n)
兩個(gè)參數(shù)的形式允許精確控制返回的位數(shù)。如果 n
大于 38
,則會發(fā)生 <ILLEGAL VALUE>
錯(cuò)誤。如果 n
大于 0
,則返回四舍五入到 n
個(gè)有效數(shù)字的 x
值。
- 當(dāng)
n
為零時(shí),使用以下規(guī)則確定該值:
-
如果
x
是無窮大,則根據(jù)需要返回INF
或-INF
。 -
如果
x
是NaN
,則返回NAN
。 -
如果
x
是正零或負(fù)零,則返回0
。 -
如果
x
可以精確地用20
個(gè)或更少的有效數(shù)字表示,則返回包含這些精確有效數(shù)字的規(guī)范數(shù)字字符串。 -
否則,將小數(shù)表示形式截?cái)酁?20 位有效數(shù)字,并且
- 如果第
20
位是0
,則替換為1
; - 如果第
20
位數(shù)字是5
,則將其替換為6
。
然后,返回結(jié)果字符串。
- 如果第
此舍入規(guī)則涉及將第 20
位數(shù)字截?cái)嘀亮?#xff0c;除非它會不精確地使第 20
位數(shù)字為 0
或 5
,該舍入規(guī)則具有以下屬性:
- 如果
$DOUBLE
值與十進(jìn)制值不同,則這兩個(gè)值將始終具有不相等的表示字符串。 - 當(dāng)
$DOUBLE
值可以轉(zhuǎn)換為十進(jìn)制值而不生成<MAXNUMBER>
錯(cuò)誤時(shí),結(jié)果與將$DOUBLE
值轉(zhuǎn)換為字符串,然后將該字符串轉(zhuǎn)換為十進(jìn)制值相同。進(jìn)行兩次轉(zhuǎn)換時(shí)不可能出現(xiàn)雙輪錯(cuò)誤。
轉(zhuǎn)換:十進(jìn)制到字符串
當(dāng)十進(jìn)制值按原樣使用時(shí)(例如,作為串聯(lián)運(yùn)算符的操作數(shù)之一),默認(rèn)情況下可以將其轉(zhuǎn)換為字符串。當(dāng)需要對轉(zhuǎn)換進(jìn)行更多控制時(shí),請使用 $FNUMBER
函數(shù)。