cnCalc计算器论坛

 找回密码
 注册
搜索
楼主: zasdfgbnm

【原创】使用fx-es实现简单编程

[复制链接]
 楼主| 发表于 2009-4-5 13:45:07 | 显示全部楼层
用方法2最多同时进行三次赋值运算
 楼主| 发表于 2009-4-5 13:53:42 | 显示全部楼层
继续拓展,如要编写以下程序:
While(A<1000){
x=x+y;
y=x+y;
x=x+1;
y=y+1;
x=x+2y;
A=A+1;
}
可以使用如下语句:
(1000-1)PA(排列组合判断速度比根号快)×0+Pol(Rec(x+y,x+y),y)×0+Pol(Rec(x+1,y+1),y)×0+Pol(Rec(x+2y,y),y)×0+A+1→A
也就是说,使用pol和rec可以实现多次对于x,y的赋值和一次对于其他变量的赋值而只按一次等号
 楼主| 发表于 2009-4-5 14:03:11 | 显示全部楼层
没有志同道合的人和我一起研究?
好像高手都投入在了软硬升级爆机以及异常模式中,有没有人和我一起来研究一下编程?
发表于 2009-5-9 12:07:38 | 显示全部楼层
我来继承你的事业吧wph%20(11).gif
发表于 2009-5-30 09:23:58 | 显示全部楼层
可怕。。算法复杂度理论要搬出来了吧 - =
减少=的按键次数也是很有必要的。。。
 楼主| 发表于 2009-7-25 16:37:52 | 显示全部楼层
减少等号的最简单方法就是买个可编程的计算器:lol
 楼主| 发表于 2009-10-1 07:02:04 | 显示全部楼层
可以弄一个电磁打点计时器改造一下,让它对着【=】狂打:lol
 楼主| 发表于 2009-10-7 06:51:10 | 显示全部楼层
又一个新的里程碑——sgn(x)和条件语句的实现:
实现思路:利用
任意数和零相乘结果为0,任意数和1相乘结果为它本身的性质就可以实现条件赋值
比如说:要想实现if(a>b){x->y}就可以用以下表达式:
(x-y)*<要找的表达式>+y->y
只要要找的表达式满足当a>b时该表达式的值为1,当不满足a>b时表达式的值为0就可以实现条件语句
,这样就可以把任意的编程的条件语句转换成计算器能用的语言
下面就介绍以下我的实现方法
一、符号函数:sgn(x)=1(x>0),-1(x<0),0(x=0)。
计算器实现:只要有|x|>10^-85或x=0就有sgn(x)=x÷(|x|+1×10^-99)
二、条件语句的基础函数:ispositive(x)和isnotnegative(x)
当x为正数时ispositive(x)为1,当x为负数或零时ispositive(x)为0。
当x为非负数时isnotnegative(x)为1,当x为负数时isnotnegative(x)为0。
计算器实现:
ispositive(x)=max(0,sgn(x))
isnotnegative(x)=min(0,sgn(x))+1

三、条件语句的实现:
1.将条件句转换为ispositive(x)或isnotnegative(x)的形式。
如x+1<3等效于3-(x+1)>0可以转化成ispositive(3-(x+1))
同理x+1≤5等效于5-(x+1)≥0可以转化成isnotnegative(5-(x+1))
2.逻辑运算:与或非:
与用乘,或用加,非用2^(条件)-1
下面举个例子:
对x+1<3进行非运算:2^(ispositive(3-(x+1)))-1
对x+1<3和x+1≤5进行与运算:ispositive(ispositive(3-(x+1))×isnotnegative(5-(x+1)))
对x+1<3和x+1≤5进行或运算:ispositive(ispositive(3-(x+1))+isnotnegative(5-(x+1)))
四、条件赋值:
若a>0则将x赋值给y:
(x-y)×ispositive(a)+y->y
发表于 2009-10-7 16:17:13 | 显示全部楼层
楼上火星了。。。现在的关键问题是如何把已知的一段程序代码用固定、通用的方式转换成计算器语言。
 楼主| 发表于 2009-10-7 21:36:44 | 显示全部楼层
我研究的一直就是这个问题啊,
最新成果是把if语句转换为计算器语言,例如:
if(a>0){y=x}
转换成
(x-y)*(0+a÷(|a|+1×10^-99)+|0-a÷(|a|+1×10^-99)|)/2+y->y
max(a,b),min(a,b),ispositive(x)和isnotnegative(x)只是为了叙述方便和条理而引入的符号,前面都有介绍
 楼主| 发表于 2009-10-7 21:37:19 | 显示全部楼层
难道我说的不明白?
发表于 2009-10-8 20:58:38 | 显示全部楼层
难道我说的不明白?
zasdfgbnm 发表于 2009-10-7 21:37

一共也就你们三个志同道合的人在讨论。。。我们能明白到哪里去。。。
发表于 2009-10-8 20:59:54 | 显示全部楼层
嗯~~~~,要简单易懂些啊!
发表于 2009-10-8 21:00:30 | 显示全部楼层
你们就像Kenneth Casson。。。能从十六进制数的导出文件中理解原始SMB【Server Message Block】。。。。。。
发表于 2009-10-8 21:00:52 | 显示全部楼层
语出Dan Kaminsky的BabelNet。。。
发表于 2009-10-8 21:03:50 | 显示全部楼层
我们需要解释。。。。。。
发表于 2009-10-8 21:05:56 | 显示全部楼层
弄不懂就不要去刻意弄懂,否则会很不爽
发表于 2009-10-8 21:06:51 | 显示全部楼层
早上好。。。
发表于 2009-10-8 21:08:20 | 显示全部楼层
早上好。。。
hcz 发表于 2009-10-8 21:06

高高在上的火星人好~~~~~
发表于 2009-10-8 21:13:02 | 显示全部楼层
测试通过!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-24 19:21 , Processed in 0.046684 second(s), 17 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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