您正在使用新版界面(Beta)。返回原版界面

本页面由机器翻译自动翻译而成,翻译内容可能存在不准确之处,敬请谅解。

keisan服务于日常生活和工作的高精度计算网站

使用方法

TOP/使用方法

keisan是一项计算服务,旨在通过应用可变精度算术技术来实现精度保障。

keisan的特点

1. 可以更改计算位数。

(位数通过"计算位数"设置进行指定)

设置结果
计算位数 6√5 =sqrt(5) =2.23607
计算位数 14√5 =sqrt(5) =2.2360679774998
环境结果
keisan(0.9-0.3*3) =0
Excel(0.9-0.3*3) =1.11022E-16(二进制-十进制转换误差)

2. 自动判断正确的精度位数。

设置结果
计算位数 61-0.999876 =1.24000E-4
计算位数 10gamma(3.5) =3.323350970

3. 支持复数、统计函数、特殊函数和表格计算。

类型示例
[将计算位数设为6]
复数(1+i)^(1+i) =0.273957+0.583701i
误差函数x =0.1 erf(x) =0.112463
表格计算sqrt(x) x =2,1,5

表格计算结果

xsqrt(x)
21.41421
31.73205
42
52.23607
62.44949
sqrt(x) 图像,x=2..6

4. 可以使用算式库。

算式名称内容
三角形的面积 (a,b,c)s=(a+b+c)/2; a=3; b=4; c=5; sqrt(s*(s-a)*(s-b)*(s-c))

算式语法规则

1. 数值

0,1,2,3,4,5,6,7,8,9, .(小数点), E(指数), i(虚数), +, -

输入示例说明
12340.56789等同于 1.234056789E4
E2100
1.23E+412300 — E+中的+是指数符号,可以省略
1.23E-40.000123 — E-中的-是指数符号,不可省略
i0+1i
E+2i0+100i
1.23+4.56i建议将复数用括号括起来
1.23E3+4.56E2i1230+456i
1.23E-3-4.56E+2i0.00123-456i

注意:指数部分请使用大写E。(小写e表示自然对数的底数)

2. 变量

必须以字母或汉字开头,后续可以是字母、数字或汉字。 不能使用特殊符号和保留字。

类别示例
变量名示例a, sinx, a3 等
无效示例e, i, inf, sin, E 等保留字
无效示例#abc, 3abc, ab_c 等

3. 函数

由函数名和括号内的一个或多个参数组成。 多个参数之间用逗号(",")分隔。 参数可以是数值、变量、函数或表达式。

示例:sin(x) normalcd(x,μ,2) normalcd(x+y,ln(12),σ)

没有参数的常量不使用括号。

示例:pi inf e

4. 运算符

运算符包括 + , - , * , / , ^ , ! , =, 用于指定数值、变量和函数等元素之间的运算。

示例说明
element1 + element2将element1与element2相加
element1 - element2从element1中减去element2
element1 * element2将element1与element2相乘(*可以省略)
element1 / element2将element1除以element2
element1 ^ element2将element1的element2次幂
element1 !element1的阶乘(单元素运算)
element1 = element2将element2的结果赋值给element1。因此,element1必须是变量。

5. 表达式

表达式由元素(数值、变量、函数)通过运算符组合而成。 表达式可以作为元素,进一步与运算符组合。 运算顺序遵循下方"运算优先级"部分。 示例:element1 + element2 - element3 * element4 / element5 ^ element6 ! + ...

6. 其他

负号(-)被视为二元运算符,指数表示法除外。 但在表达式开头、左括号或逗号之后,它被视为符号。

示例:-a+b → (0-a)+b -a^b → 0-(a^b) a^-b → 错误 a^(-b) → a^(0-b) a*b;-a*b → a*b;0-(a*b) a*-b → 错误

可以使用空格使表达式更易读。

运算优先级

  1. 优先级较高的运算符先执行。
  2. 相同优先级的运算符从左到右执行。*例外:乘幂运算符(^)从右到左执行。
  3. 括号内的表达式优先执行。
  4. 嵌套括号中,最内层的括号优先执行。

运算符类型和优先级

优先级运算符含义
高 ↑函数内置函数
!!, !, ^双阶乘、阶乘、乘幂
*, /乘法、除法
+, -加法、减法
↓ 低=赋值

表达式书写中的常见错误

省略括号时的运算顺序

表达式解释说明
2+3*4→2+(3*4)乘法优先级高于加法
3*4^5→3*(4^5)乘幂优先级高于乘法
sin(2)^3→(sin(2))^3函数优先级高于乘幂
1/2i→1/(2i)虚数单位优先
3!!!→(3!!)!双阶乘优先级高于阶乘

省略乘号的表达式

表达式结果说明
3a○计算为 3*a
a3×a3是一个变量名
a(b+c)×不是a*(b+c);a被视为用户定义的函数
(a+b)(b+c)○计算为 (a+b)*(b+c)

数值、运算符与常量

数值

类型示例保留字
数字12345678900-9
小数点0.123.
符号-123, +456+,-
指数1.23E-45E
虚数2+3ii

运算符

类型示例保留字
加法x+y+
减法x-y-
乘法x*y*
除法x/y/
乘幂x^y^
阶乘n!!
双阶乘n!!!!
赋值a=123=

多表达式

类型示例保留字
表达式分隔符a=2+3; b=4/7;

常量

类型值保留字
自然对数的底数e =2.71828...e
无穷大∞inf
圆周率π =3.14159..pi
欧拉常数γ =0.5772...euler
真true =1true
假false =0false

初等函数

对数函数和指数函数

函数符号保留字
平方根√sqrt(x)
常用对数loglog(x)
自然对数lnln(x)
指数函数e^xe^x
幂函数x^yx^y

三角函数

函数符号保留字
正弦sinsin(x)
余弦coscos(x)
正切tantan(x)
反正弦sin⁻¹asin(x)
反余弦cos⁻¹acos(x)
反正切tan⁻¹atan(x)

双曲函数

函数符号保留字
双曲正弦sinhsinh(x)
双曲余弦coshcosh(x)
双曲正切tanhtanh(x)
反双曲正弦sinh⁻¹asinh(x)
反双曲余弦cosh⁻¹acosh(x)
反双曲正切tanh⁻¹atanh(x)

组合与排列

函数符号保留字
组合nCrcombination(n,r)
排列nPrpermutation(n,r)
阶乘x!x!
双阶乘x!!x!!

数值函数(实数)

函数示例保留字
不超过x的最大整数int(4.2) =4, int(-4.2) =-5int(x)
不小于x的最小整数ceiling(4.2) =5, ceiling(-4.2) =-4ceiling(x)
整数部分IP(4.2) =4, IP(-4.2) =-4IP(x)
小数部分FP(4.2) =0.2, FP(-4.2) =-0.2FP(x)
x除以y的余数mod(9,5) =4, mod(-9,5) =1mod(x,y)
y*FP(x/y)remainder(9,5) =4, remainder(-9,5) =-4remainder(x,y)
四舍五入round(2.35,1) =2.4, round(-2.35,1) =-2.4round(x,n)
向下取整rounddown(2.34,1) =2.3, rounddown(-2.34,1) =-2.4rounddown(x,n)
向上取整roundup(2.34,1) =2.4, roundup(-2.34,1) =-2.3roundup(x,n)
IP(x*10^n)/10^ntruncate(2.34,1) =2.3, truncate(-2.34,1) =-2.3truncate(x,n)
随机实数[0,1]区间内的随机小数random_f()
随机实数[a,b]区间内的随机小数random_f(a,b)
随机整数[a,b]区间内的随机整数random_i(a,b)

数值函数(复数)

函数说明保留字
符号sign(z) =1,0,-1sign(z)
共轭复数x+iy → x-iyconjugate(z)
实部x+iy → xRe(z)
虚部x+iy → ylm(z)
绝对值|z| =|re^(iθ)| =rabs(z)
辐角re^(iθ) → θargument(z)
直角坐标转换re^(iθ) → x+iycartesian(z)
直角坐标转换(r,θ) → x+iycartesian(r,θ)
极坐标转换x+iy → re^(iθ)polar(z)
极坐标转换(x,y) → re^(iθ)polar(x,y)

最大值和最小值

函数示例保留字
最大值(最多20个参数)max(1,2,3,4) = 4max(a,b,c,d,...)
最小值(最多20个参数)min(1,2,3,4) = 1min(a,b,c,d,...)

统计函数

连续分布函数(Q: 上侧累积概率, f: 概率密度, x: 百分位数, λ: 非中心参数)

函数保留字
标准正态分布Q: normalcd(x) f: normalpd(x) x: normalicd(Q)
正态分布Q: normalcd(x,μ,σ) f: normalpd(x,μ,σ) x: normalicd(Q,μ,σ)
对数正态分布Q: lognormalcd(x,μ,σ) f: lognormalpd(x,μ,σ) x: lognormalicd(Q,μ,σ)
卡方分布Q: chi2cd(x,ν) f: chi2pd(x,ν) x: chi2icd(Q,ν)
学生t分布Q: tcd(x,ν) f: tpd(x,ν) x: ticd(Q,ν)
F分布Q: fcd(x,ν1,ν2) f: fpd(x,ν1,ν2) x: ficd(Q,ν1,ν2)
非中心卡方分布Q: ncchi2cd(x,ν,λ) f: ncchi2pd(x,ν,λ) x: ncchi2icd(Q,ν,λ) λ: ncchi2il(P,x,ν)
非中心t分布Q: nctcd(x,ν,λ) f: nctpd(x,ν,λ) x: ncticd(Q,ν,λ) λ: nctil(Q,x,ν)
非中心F分布Q: ncfcd(x,ν1,ν2,λ) f: ncfpd(x,ν1,ν2,λ) x: ncficd(Q,ν1,ν2,λ) λ: ncfil(Q,x,ν1,ν2)
均匀分布Q: uniformcd(x,a,b) f: uniformpd(x,a,b) x: uniformicd(Q,a,b)
指数分布Q: exponentialcd(x,b) f: exponentialpd(x,b) x: exponentialicd(Q,b)
威布尔分布Q: weibullcd(x,a,b) f: weibullpd(x,a,b) x: weibullicd(Q,a,b)
伽马分布Q: gammacd(x,a,b) f: gammapd(x,a,b) x: gammaicd(Q,a,b)
贝塔分布Q: betacd(x,a,b) f: betapd(x,a,b) x: betaicd(Q,a,b)
拉普拉斯分布Q: laplacecd(x,a,b) f: laplacepd(x,a,b) x: laplaceicd(Q,a,b)
柯西分布Q: cauchycd(x,a,b) f: cauchypd(x,a,b) x: cauchyicd(Q,a,b)
逻辑斯谛分布Q: logisticcd(x,α,β) f: logisticpd(x,α,β) x: logisticicd(Q,α,β)
帕累托分布Q: paretocd(x,xm,α) f: paretopd(x,xm,α) x: paretoicd(Q,xm,α)
广义帕累托分布Q: gparetocd(x,μ,σ,ξ) f: gparetopd(x,μ,σ,ξ) x: gparetoicd(Q,μ,σ,ξ)
莱维分布Q: levycd(x,μ,c) f: levypd(x,μ,c) x: levyicd(Q,μ,c)

注意:若需下侧累积概率P,请在保留字后附加"lower"。示例:P=normalcdlower(x), x=normalicdlower(P)

离散分布函数(Q: 上侧累积概率, f: 概率密度, x: 百分位数, λ: 非中心参数)

函数保留字
泊松分布Q: poissoncd(x,λ) f: poissonpd(x,λ) x: poissonicd(Q,λ) λ: poissonil(Q,x)
二项分布Q: binomialcd(x,n,p) f: binomialpd(x,n,p) x: binomialicd(Q,n,p)
负二项分布Q: negbinomialcd(x,k,p) f: negbinomialpd(x,k,p) x: negbinomialicd(Q,k,p)
几何分布Q: geometriccd(x,p) f: geometricpd(x,p) x: geometricicd(Q,p)
超几何分布Q: hypgeometriccd(x,n,M,N) f: hypgeometricpd(x,n,M,N)

注意:若需下侧累积概率P,请在保留字后附加"lower"。示例:P=poissoncdlower(x,λ), x=poissonicdlower(P,λ), λ=poissonillower(P,x)

贝塞尔函数

贝塞尔函数 (f(x), f'(x), f⁻¹(0) s=1,2,.., f'⁻¹(0) s=1,2..)

函数符号保留字
第一类贝塞尔函数Jν(x)besselj(ν,x) besseljdf(ν,x) besseljzeros(ν,s) besseljdfzeros(ν,s)
第二类贝塞尔函数Yν(x)bessely(ν,x) besselydf(ν,x) besselyzeros(ν,s) besselydfseros(ν,s)
第一类修正贝塞尔函数Iν(x)besseli(ν,x) besselidf(ν,x)
第二类修正贝塞尔函数Kν(x)besselk(ν,x) besselkdf(ν,x)
第一类汉克尔函数H⁽¹⁾ν(x)hankelH1(ν,x) hankelH1df(ν,x)
第二类汉克尔函数H⁽²⁾ν(x)hankelH2(ν,x) hankelH2df(ν,x)

球贝塞尔函数

函数符号保留字
第一类球贝塞尔函数jν(x)sphericalbesselj(ν,x) spherical besseljdf(ν,x) spherical besseljzeros(ν,s) spherical besseljdfzeros(ν,s)
第二类球贝塞尔函数yν(x)sphericalbessely(ν,x) sphericalbesselyjdf(ν,x) sphericalbesselyzeros(ν,s) sphericalbesselydfzeros(ν,s)
第一类修正球贝塞尔函数iν(x)sphericalbesseli(ν,x) sphericalbesselidf(ν,x)
第二类修正球贝塞尔函数kν(x)sphericalbesselk(ν,x) sphericalbesselkdf(ν,x)
第一类球汉克尔函数h⁽¹⁾ν(x)sphericalhankelH1(ν,x) sphericalhankelH1df(ν,x)
第二类球汉克尔函数h⁽²⁾ν(x)sphericalhankelH2(ν,x) sphericalhankelH2df(ν,x)

艾里函数 (f(x), f'(x), f⁻¹(0) s=1,2,.., f'⁻¹(0) s=1,2..)

函数符号保留字
艾里函数Ai(x)airyai(x) airyaidf(x) airyaizeros(s) airyaidfzeros(s)
艾里函数Bi(x)airybi(x) airybidf(x) airybizeros(s) airybidfzeros(s)

开尔文函数 (f(x), f'(x))

函数符号保留字
第一类开尔文函数berν(x)ber(ν,x) berdf(ν,x)
第一类开尔文函数beiν(x)bei(ν,x) beidf(ν,x)
第二类开尔文函数kerν(x)ker(ν,x) kerdf(ν,x)
第二类开尔文函数keiν(x)kei(ν,x) keidf(ν,x)
第三类开尔文函数herν(x)her(ν,x) herdf(ν,x)
第三类开尔文函数heiν(x)hei(ν,x) heidf(ν,x)

特殊函数

伽马函数

函数符号保留字
伽马函数Γ(a)gamma(a)
下不完全伽马函数γ(a,x)igamma1(a,x)
上不完全伽马函数Γ(a,x)igamma2(a,x), gamma(a,x)
正则化下伽马函数γ(a,x)/Γ(a)gammap(a,x)
正则化上伽马函数Γ(a,x)/Γ(a)gammaq(a,x)
对数伽马函数lnΓ(a)lngamma(a)
双伽马函数Ψ(a)polygamma(a)
多伽马函数Ψ⁽ⁿ⁾(a)polygamma(n,a)
双阶乘x!!x!!
波赫哈默尔函数(x)npochhammer(x,n)

贝塔函数

函数符号保留字
贝塔函数B(a,b)beta(a,b)
不完全贝塔函数Ix(a,b)y: ibeta(x,a,b) x: ibetaix(y,a,b)
不完全贝塔函数I₁₋ₓ(a,b)y: ibetac(x,a,b) x: ibetacix(y,a,b)

误差函数

函数符号保留字
误差函数erf(x)y: erf(x) x: erfix(y)
互补误差函数erfc(x)y: erfc(x) x: erfcix(y)
虚误差函数erfi(x)y: erfi(x)

初等函数积分与菲涅耳积分

函数符号保留字
指数积分Ei(x)Ei(x)
指数积分En(x)Ei(n,x)
对数积分li(x)li(x)
正弦积分Si(x)Si(x)
余弦积分Ci(x)Ci(x)
双曲正弦积分Shi(x)Shi(x)
双曲余弦积分Chi(x)Chi(x)
菲涅耳正弦积分S(x)fresnelS(x)
菲涅耳余弦积分C(x)fresnelC(x)

椭圆积分与椭圆函数

函数符号保留字
第一类完全椭圆积分K(k)ellipticK(k)
第二类完全椭圆积分E(k)ellipticE(k)
第三类完全椭圆积分Π(n,k)ellipticPi(n,k)
第一类不完全椭圆积分F(x,k)ellipticF(x,k)
第二类不完全椭圆积分E(x,k)ellipticE(x,k)
第三类不完全椭圆积分Π(x,n,k)ellipticPi(x,n,k)
雅可比sn函数sn(u)jacobiSN(u,k)
雅可比cn函数cn(u)jacobiCN(u,k)
雅可比dn函数dn(u)jacobiDN(u,k)
振幅函数am(u)jacobiAM(u,k)

正交多项式

函数符号保留字
埃尔米特多项式Hn(x)hermiteH(n,x)
第一类切比雪夫多项式Tn(x)chebyshevT(n,x)
第二类切比雪夫多项式Un(x)chebyshevU(n,x)
勒让德多项式Pn(x)legendreP(n,x)
连带勒让德多项式Pn(m,x)legendreP(n,m,x)
拉盖尔多项式Ln(x)laguerreL(n,x)
连带拉盖尔多项式Ln(α,x)laguerreL(n,α,x)
盖根鲍尔多项式Cn(λ,x)gegenbauerC(n,λ,x)
雅可比多项式Pn(α,β,x)jacobiP(n,α,β,x)

其他特殊函数

函数符号保留字
合流超几何函数1F1(a;b;x)F11(a,b,x)
合流超几何函数U(a;b;x)FU11(a,b,x)
高斯超几何函数2F1(a,b;c;x)F21(a,b,c,x)
伯努利数Bnbernoulli(n)
黎曼ζ函数ζ(x)zeta(x)

编程

一个专为数值计算设计的简单类C编程系统。

流程控制语句

保留字说明
if(condition){expr;...} elseif(condition){expr;...} else{expr;...}如果if条件为真,则执行该代码块。 如果为假,则类似地判断elseif条件。 执行匹配的代码块后退出if语句。
while(condition){expr;...}如果条件为真,则执行代码块。 重复执行直到条件为假。
do{expr;...} while(condition);无条件执行代码块。 如果条件为真,再次执行;如果为假,退出。
for(variable=initial; condition; variable=variable+step) {expr;...}初始化变量,如果条件为真则执行代码块。 递增变量并在条件为真时重复执行;条件为假时退出。
break无条件退出循环
continue无条件返回循环开头

输出语句

保留字说明
print(expr1,expr2,...)输出表达式
println(expr1,expr2,...)输出表达式并换行
/*comment*/不影响计算或控制流程

逻辑运算符和逻辑值

类别保留字说明
逻辑运算符not优先级:not > and > or
逻辑运算符and
逻辑运算符or
逻辑运算符==左表达式等于右表达式
逻辑运算符<>左表达式不等于右表达式
逻辑运算符=<, <=左表达式小于或等于右表达式
逻辑运算符=>, >=左表达式大于或等于右表达式
逻辑运算符<左表达式小于右表达式
逻辑运算符>左表达式大于右表达式
逻辑值truetrue=1 (≠0)
逻辑值falsefalse=0

数组

保留字说明示例
numeric arrayname[size]; numeric arrayname[size][size]; numeric arrayname[size][size][size]; ....声明数组。numeric test1[4]; numeric test2[4][4]; numeric test3[4][4][4];
numeric arrayname[] = {val1,val2,...}; numeric arrayname[][] = {{....},{....}}; ....声明并初始化数组。numeric test1[] = {1,2,3}; numeric test2[][] = {{1,2,3},{4,5,6}}; numeric test3[][][] = {{{1,2},{3,4}},{{5,6},{7,8}}};
kei_length(a)获取数组的元素个数。numeric test[4]; n = kei_length(test);
function funcname(numeric k[]){...}将数组指定为函数参数。numeric test[]={0,1,2,3}; func1(test); function func1(numeric k[]) { print(k[0]); ..... }