WOO logo

在這一頁

Wiz Calc

在這一頁

Wizard of Odds Approved

$11000

注册奖金

$3,000

欢迎奖金

[当前]777

奖金

簡介

想像一下,一台計算器不再受限於 16 位元有效數字。別再幻想了,因為這款計算器可以執行大多數科學計算,精確到數百位元有效數字。這真是太棒了,我們捨不得私藏,所以請盡情享受吧。

輸入:

輸出:

常量

命名常量

下列命名常數可用:

姓名近似值
e 2.718281828459045…
π pi 3.141592653589793…
τ tau 6.283185307179586…

數字常量

數字常數可以有整數部分、小數部分或兩者,後面還可以跟著指數部分:

  • 整數部分由一個或多個十進制數字組成

  • 小數部分由一個小數點組成.後面跟著一個或多個十進制數字

  • 指數部分由Ee組成,後面跟著可選的+- ,後面跟著一個或多個十進制數字

範例
1 .5 1.5
1e2 .5e2 1.5e2
1E2 .5E2 1.5E2
1e+2 .5e+2 1.5e+2
1E+2 .5E+2 1.5E+2
1e-2 .5e-2 1.5e-2
1E-2 .5E-2 1.5E-2

運算符

以下運算符可用於表達式:

類別優先權結合性操作員描述例子
基本的最高沒有任何()子表達式(1 + e)
後綴第二從左到右()功能lcm(3, 4)
!階乘4!
力量第三從右到左^指數運算2^6
前綴第四從右到左+一元加法+3
-否定-7
平方根√2
乘法第五從左到右隱式乘法2pi
*顯式乘法2 * pi
/分配pi / 2
%12 % 5
添加劑最低從左到右+添加e + 1
-減法e - 1

當命名常數後緊接一個數值常數或命名函數時,隱式乘法無法辨識。例如, pi2esin4是錯誤的,而2pipi 2e sin 4是有效的。

功能

以下函數可用於表達式。函數名稱區分大小寫。

一元函數的運算元無需加括號。例如, ln 2sin sqrt 2都是有效的。以這種方式使用時,函數名稱的行為相當於前綴運算子。例如, sin 2π被解析為(sin 2) × πln 2 ^ 4被解析為ln(2 4 )

四捨五入

功能描述
ceil( x )傳回不小於x 的最小整數
floor( x )傳回不大於x 的最大整數
int( x )傳回x的整數部分
round( x )傳回最接近x 的整數值
(平手從零開始四捨五入)
trunc( x )傳回x的整數部分

根、指數與對數

功能描述
cbrt( x )返回x的立方根
exp( x )返回e x
exp2( x )返回2 x
exp10( x )返回10 x
ln( x )傳回x的自然對數
log( x , b )傳回x的以b為底的對數
log2( x )傳回x的以2為底的對數
log10( x )傳回x的以10為底的對數
sqrt( x )傳回x的平方根

三角學

功能描述
acos( x )返回x的反餘弦
acosh( x )返回x的反雙曲餘弦
acot( x )返回x的反餘切
acoth( x )返回x的反雙曲餘切
acsc( x )返回x的反餘割
acsch( x )傳回x的反雙曲餘割值
asec( x )返回x的反正割
asech( x )傳回x的反雙曲正割值
asin( x )回傳x的反正弦
asinh( x )傳回x的反雙曲正弦值
atan( x )返回x的反正切
atan2( y , x )傳回yx的雙參數反正切
atanh( x )返回x的反雙曲正切
cos( x )返回x的餘弦
cosh( x )返回x的雙曲餘弦
cot( x )返回x的餘切
coth( x )返回x的雙曲餘切
csc( x )返回x的餘割
csch( x )返回x的雙曲餘割
hypot( x , y )返回xy的斜邊
sec( x )返回x的正割
sech( x )返回x的雙曲正割
sin( x )返回x的正弦
sinc( x )傳回x的基數正弦
sinh( x )返回x的雙曲正弦
tan( x )返回x的正切
tanh( x )返回x的雙曲正切

雜項

功能描述
abs( x )傳回x的絕對值
avg( x , y )返回xy的平均值
combin( n , k )傳回從n 個項目中選擇k 個項目的方法數
(二項式係數)
gcd( x , y )傳回xy的最大公約數
hgd( k , n , K , N )傳回從n 個項目中選擇k 個項目的機率,
假設從N個項目中選擇K 個項目
interp( x , x 0 , y 0 , x 1 , y 1 )傳回x的線性插值y
給定座標 ( x 0 , y 0 ) 和 ( x 1 , y 1 )
lcm( x , y )傳回xy的最小公倍數
max( x , y )返回xy的最大值
min( x , y )回傳xy的最小值
nabs( x )傳回x的絕對值的負數
permut( n , k )傳回從n 個項目中排列k 個項目的方法數
sign( x )根據x的值傳回−10+1

文法

以下類似 EBNF 的符號描述了表達式語法:

表達:
    | 加法表達式
    ;

加法表達式:
    | 乘法表達式
    | 加法表達式 '+' 乘法表達式
    | 加法表達式 '-' 乘法表達式
    ;

乘法表達式:
    | 前綴表達式
    | 乘法表達式前綴表達式
    | 乘法表達式 '*' 前綴表達式
    | 乘法表達式 '/' 前綴表達式
    | 乘法表達式 '%' 前綴表達式
    ;

前綴表達式:
    | '+' 前綴表達式
    | '-' 前綴表達式
    | '√' 前綴表達式
    | 一元函數前綴表達式
    | 權力表達
    ;

    一元函數:
        | '天花板' | '地板'
        | '整數' | '截斷'
        | '圓形'
        | '平方根' | 'cbrt'
        | '表達式' | '表達式2' | '表達式10'
        | 'ln' | 'log' | 'log2' | 'log10'
        | '罪' | '阿辛' | '辛' | '阿辛' | '正弦'
        | 'cos' | 'acos' | 'cosh' | 'acosh'
        | '曬黑' | 'tanh' | 'tanh' | '阿坦' | '阿坦'
        | '秒' | 'asec' | 'sech' | 'sech' | '阿塞克'
        | 'CSC' | 'CSC' | 'acsc' | 'csch' | 'csch' | 'acsch'
        | '嬰兒床' | 'acot' | 'acot' | '棉布' | '阿科斯'
        | 'abs' | 'nabs' | 'sign'
        ;

力量表達:
    | 後綴表達式
    | 字尾表達式 '^' 前綴表達式
    ;

後綴表達式:
    | 函數
    | 主表達式
    | 後綴表達式 '!'
    ;

    功能:
        | 函數名稱'('參數列表')'
        ;

        函數名稱:
            | '地板' | '天花板'
            | '整數' | '截斷'
            | '圓形'
            | '平方根' | 'cbrt'
            | '表達式' | '表達式2' | '表達式10'
            | 'ln' | 'log' | 'log2' | 'log10'
            | '假設'
            | '罪' | '阿辛' | '辛' | '阿辛' | '正弦'
            | 'cos' | 'acos' | 'cosh' | 'acosh'
            | '曬黑' | 'tanh' | 'tanh' | '阿坦' | '阿坦' | '阿坦2'
            | '秒' | 'asec' | 'sech' | 'sech' | '阿塞克'
            | 'CSC' | 'CSC' | 'acsc' | 'csch' | 'csch' | 'acsch'
            | '嬰兒床' | 'acot' | 'acot' | '棉布' | '阿科斯'
            | 'abs' | 'nabs' | 'sign'
            | '最小值' | '最大值' | '平均值'
            | '最大公約數' | '最小公倍數'
            | '組合' | '排列' | 'hgd'
            | '解釋器'
            ;

        參數列表:
            | 表達式
            | 參數列表','表達式
            ;

主要表達式:
    | 常數
    | '('表達式')'
    ;

    持續的:
        | 命名常數
        | 數字常數
        ;

        命名常數:
            | 'e'
            | 'π' | '圓周率'
            | 'τ' | 'tau'
            ;

        數字常數:
            | 整數部分 [ 小數部分 ] [ 指數部分 ]
            | 小數部分 [ 指數部分 ]
            ;

            整數部分:
                | 數字 { 數字 }
                ;

                數字:
                    | '0' | '1' | '2' | '3' | '4'
                    | '5' | '6' | '7' | '8' | '9'
                    ;

            小數部分:
                | '。' 整數部分 ;指數部分: | 指數字元 [ 指數符號 ] 整數部分 ;指數字元: | 'E' | 'e' ;指數符號: | '+' | '-' ;

用途

致謝

我們要感謝MathJS為這個計算器和一些原始碼提供靈感。