win calc计算器妙用-功能键-编辑键-视图-命令键-脚本-迭代-连分数-批量和-批次高精度-内存-lisp-文本VS代码

本文介绍了Windows计算器在解决数论问题时的便利性,包括其内置的高精度计算、脚本支持和迭代功能。通过举例说明如何利用计算器进行批量计算、高精度求根和连分数计算,揭示了计算器在数学计算中的潜力。此外,还探讨了计算器的内存使用和与Excel的结合,以及与Lisp等编程语言的相似之处。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

win calc计算器妙用-功能键-编辑键-视图-命令键-脚本-迭代-连分数-批量和-批次高精度-内存-lisp-文本VS代码
windows计算器低级使用-运行-功能键-编辑键-视图-命令键-脚本-迭代开方-连分数-批量求和-批次式高精度-内存使用-lisp- 文本与代码合一

一直觉得windows计算器是个好东西.四年前,曾在网吧教收银员在交班时用统计框进行计算.
今天试用了一些计算器来计算数论问题, 发现它的方便性仍然无可取代.

首先,
它是内置于操作系统的, 调用方便:
(ctrl-ESC-R或win键-R)  开始菜单-运行 calc
或                                  开始菜单-程序-附件-计算器
(ctrl_shift_ESC)- alt_FR  任务管理器:菜单-运行 calc
其次,
比excel的计算精度要高,可以到32位有效数字.
当然, excel也可以有高精度计算包, 但是我发现excel 2010居然不能计算 mod (139*81*10^8k+a, k), a>=0, 对excel有些不信任了.
朋友们如果发现有excel的高精度计算包, 请推荐一个.
{
数学软件, mathematica, maple, matlab好久没用了. 因为它们处理文本和数据列表, 没有excel 方便.比如excel可以方便的分组折叠与展开.
如果是我掌握不够好的原因,请朋友们指点一下.谢谢.
matlab 可以嵌入到office, 尤其是excel中, 倒是很好. 这个有空的话, 我再多多应用. 朋友们有这方面的心得的话, 请不吝指教. 谢谢.
}
再次,
 calc也支持简单的按键命令脚本.与excel结合, 也很有效.
一个问题是如何利用calc批量计算,将统计框内的数据复制到excel中.
再次,calc的按键命令,实在是太方便,使我想起了vim.由此编成的脚本也十分简炼,有点像J语言与lisp之类的了。
迭代, 是可以用脚本实现的; 但是似乎只能支持一个内存变量.
多变量的交换, 是个问题.如何能调用统计框中的多个内存变量,是个问题.
下面的例子可以用现成的函数计算出来, 但我举这样的例子,是为了说明, calc的确可以使用脚本来处理问题.
其实, 用数学软件很容易完成,也不必在calc上煞费苦心. 不过, 或者能够带来些什么启发也说不定吧.

DDDBBB12
    注: 下面的例子要调用计算器的科学型界面. 如有必要, 请先参考 AAA. 如熟悉计算器功能, 先测试无妨.指令的意义见BBB

例一:利用x(n+1)=(x(n)+a/x(n))/2计算sqrt(a)
例二:  用连分数计算黄金分割数(sqrt(5)-1)/2=1/(1+1/(1+...))=[0; {1}]
例三:  批量数据用计算器求和.
例四:  用来进行高精度计算.
例一(1):  计算银数,即满足X(n+3)=X(n+1)+X(n)的数列的邻值比X(n+1)/X(n)的极根.利用x^3=x+1,由初值x进行(x+1)^(1/3)迭代.
计算得到银数:1.3247179572447460259609088544781.用excel单变量求解,则可以得到1.32471795724475,精确到14位有效值,舍入到15位有效值.

例一:    利用x(n+1)=(x(n)+a/x(n))/2计算sqrt(a)
注意,  不能有多余的等号或回车.
注意, :p,:m要连在结果数(常数,等号或回车产生的数)的后面,:r则作为输入数出现.

步聚(1):调出统计框, 在计算过程中将结果置入到其中,以起到提示作用:
ctrl_S

步聚(2):清内存,输入初值x(0),初值为正数,如1到a之间,可固定为1.但为了起到提示作用,我将初值写入统计框,指令行如下:
(
2:m\
)

注:
1: 手动输入: 2, 再按 MS 键, 即 store in memory.
2:  这一步很要紧.
  如果中途发现与下面的描述不符, 常见的原因是: 内存中存储的变量在计算中变得与这里的预置不同,
那么你应当重新复制这个步聚运行一次再进行下面的过程.
3:  统计框也应当及时全清(全部清除), 以利观看.

步聚(3):用x(n+1)=(x(n)+a/x(n))/2进行迭代(循环操作),直到再次结果相同,即得32位的a的平方根. 过程是:
 读内存,取倒数,乘以被求平方根的数a,得到值后加到内存;    读内存,除以2,存入内存与统计框;   
 然后复制下面的指令行,反复循环.
下面是计算根号5的过程.
(
:rr*5=:p:r/2=:m\
)
注: 复制此指令, 粘贴多次就是迭代过程. 这里用5次迭代即得到32位精确值.不信你平方可以得到5
统计框下面会显示 6, 这是包含初值在内统计框内数据的数目.

例二:  用连分数计算黄金分割数(sqrt(5)-1)/2=1/(1+1/(1+...))=[0; {1}]
初值,这一步一般可以省略.因为下面的循环体中,第一步没有用除法.
(
1:m\
)
迭代过程:
(
:r+1=r:m\
)
再如计算sqrt(2)-1,将上面代码改为:
(
:r+2=r:m\
)
一般地,计算x=1/(a+x)的实根x=(-a+sqrt(aa+4))/2,用:r+a=r:m\.当a=2n时,x=-n+sqrt(nn+1).
如-2+sqrt(5)对应 ( :r+4=r:m\ )
-3+sqrt(10)对应 ( :r+6=r:m\ )
写到这里,我发现,用括号来包含脚本,而其它内容均不视为脚本而被调用和读取的话,那么文本与代码就合二为一了.
并且这种方式与lisp (包手Scheme)的点像. 从另一方面看,上面的代码还真是有lisp的意味吧?好精炼.

AAA
windows软件中通用的功能及windows计算器中的功能键总说

按钮 何冬州详注
F1 帮助 (计算器的帮助文件中没有的)菜单alt_HH
F10 菜单调用 (计算器的帮助文件中没有的)
F11 未知 (计算器的帮助文件中没有的),一般用来全屏显示,计算器中可能没有到)
F2-F4,F5-F8,F9,F12有定义. 有特殊指定  
F2-F4   Alt_VE,alt_VR,alt_VG, 分别是anglE, Rad, Grand.
F2-F4,F12   alt_VR, alt_VW, alt_VY, alt_VQ, 分别是R, Word, Y, Qword
  总说:  
    F2,F3,F4 在Dec时为角度, 弧度, 梯度; hex-Oct-bin 时为Dw双字,W字,Byte字节,F12为Qw四字;
    F5,F6,F7,F8分别为
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值