cnCalc计算器论坛

 找回密码
 注册
搜索
查看: 4346|回复: 12

呼吁:编程爱好者集中力量寻找计算机到计算器的通用转换方法

[复制链接]
发表于 2009-10-7 21:51:29 | 显示全部楼层 |阅读模式
楼上火星了。。。现在的关键问题是如何把已知的一段程序代码用固定、通用的方式转换成计算器语言。
hcz 发表于 2009-10-7 16:17
发表于 2009-10-7 22:30:10 | 显示全部楼层
我有一个东西,连我自己也不会用,大家研究下……
另:这帖子好有特色……
casform_10.0.rar (171.43 KB, 下载次数: 216)
发表于 2009-10-7 23:17:40 | 显示全部楼层
cas形式转换?
发表于 2009-10-7 23:21:19 | 显示全部楼层
zasdfgbnm 发表于 2009-10-7 21:51
想法不错,我的方法是将计算机程序理解,然后按照理解按计算器程序编写结构进行输入
长一点的程序还得分段输入。
发表于 2009-10-8 20:27:12 | 显示全部楼层
初步的一点想法。。。我们应该创造一种通俗、易用且适合转换成计算器语言的编程语言

例如解方程这段(http://www.cncalc.org/thread-1173-1-1.html

初步想法是类似这样(暂时使用类Pascal语言):
clear                                        //清除数据
read(x,y,f(x))                                        //获取x和y及fx表达式
run(err)                                        //循环运行至错误
m:=sgnerr(f(x))                                        //赋值,sgnerr表示如果值为0输出err的sgn函数
A:=-.5m*sgnerr(f(x+2^y))+.5
B:=-.5m*sgnerr(f(x-2^y))+.5
x:=x+.5a^y(1-b)
x:=x-.5b^y
y:=y-1
end                                        //循环结束
write(x)                                        //结果在x



===========
编辑:看来不太实用。。继续研究ing
发表于 2009-10-8 20:35:24 | 显示全部楼层
干脆直接用P就行了。。
发表于 2009-10-8 20:35:56 | 显示全部楼层
提出一些程序代码的命令,大家来补充

clear清除数据
read()需获取部分
write()结果
run(数字或条件或err)主体部分,条件等于0时即出错
end结束
err出错
if(条件,命令)判断,条件不等于0时有效
sgn()输出正负零符号
sgnerr()输出正负符号,0为错误
max()最大
min()最小
发表于 2009-10-8 20:36:44 | 显示全部楼层
然后就是要搞个程序,专门把代码转换成实际操作步骤
 楼主| 发表于 2009-10-8 20:40:38 | 显示全部楼层
还是做个程序比较好,现在我的方法能把计算机语言转换几乎全部(当然像readfile那样的肯定不行)转换到计算器上,可是我发的那个帖子好像很多人看不懂
发表于 2009-10-8 20:42:41 | 显示全部楼层
已经搞晕了。。
发表于 2009-10-8 20:53:50 | 显示全部楼层
现在的问题还是怎么转换进计算器比较方便。。。。

一点建议:把各种与计算有关的程序代码等整理出来,总结出导入计算器的方法


ES编程毕竟还是比较特殊的
发表于 2009-10-16 22:08:46 | 显示全部楼层
行是行,可是需要不停得按=,很麻烦。而且转化之后的程序可能无法在一行内输入完。
发表于 2009-12-12 20:24:42 | 显示全部楼层
如LZ所说,吧任意的程序代码转换到ES上用":"符号是不可能的,不过简单的程序(无嵌套循环,无数组)问题不大
你可以证明这种方法实现的编程不是图灵完备的
另一方面 这种技巧也只适合数量较小的数列题目使用
不过如果手里没有可用的其他工具,这样也不失为一种好的方法

评分

参与人数 1专家 +1 收起 理由
chsi + 1

查看全部评分

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|cnCalc计算器论坛

GMT+8, 2024-4-20 03:04 , Processed in 0.106722 second(s), 30 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表