第173章 非编程计算器也能编程?(1/1)
池远到达了走廊。
由于还没有到时候,并不能进入考场。走廊上,站满了人。
化竞生们基本都在对着手机或是笔记本,梳理知识点。
他们之中分不出来天才,也没必要区分。
那种桀骜的天才仅仅是少数,更多的天才和这些努力的人混在了一起。
看看人家的校服,人大附中、四中、北师大附属实验中学……
哪个不是天之骄子?
世界总是不缺天才,更不缺乏努力的天才。
池远自身的学习能力肯定是不错的,但起步太晚。
当然,他也没有觉得,自己靠四个月就能追上与顶级天才之间的鸿沟。
可是,以后就不一定了。
他最不缺的就是时间。
“铃铃铃——”
铃声响起,排队接受检查、核对信息,进入考场。
教室里挺安静,这使得池远身边那个兄弟按计算器的声音更为刺耳。
转头,是一个平头、带着黑框眼镜、面相普通的男生,那皱着眉的样子很是认真。
对着一个计算器这么认真?你是要戳出火星子吗?
等待考试开始的时间很漫长。
于是,池远戳了戳他,好奇地问道:
“兄弟,这计算器跟你有仇吗?”
平头托了托自己的黑框眼镜,恶狠狠地说道:
“大概有吧?我在尝试用它编程,一个混蛋给我演示了一下用这计算器运行《Doom》!”
用这非编程、非图形计算机运行伪3D游戏——《Doom》?
闹着玩的吧?
池远反正不信。
“有没有一种可能,卡西欧FX-991X,不能进行图形编辑,也不能存储程序?”
这款计算器作为竞赛指定计算器,并不属于“可存储、可编程”计算器。
所谓可存储,就是存储公式、文字、程序等,不会因为关机再开启损失。
当然,它也不能构建图形。
能构建图形的计算器叫图像计算器,一般也具备变成功能。
“我上手后,就明白了那家伙就是个骗子。
他肯定准备了两台计算器,给我展示那台装了芯片、单片机什么的,只留了计算器的样子。”
平头男拿起自己的黑色计算器给池远展示了一下:
“但我上手后,发现函数计算器也能编程,有点上瘾。这里每个字符都对应了不同的十六进制字组。
使用特殊按键组合就能使用计算器进入异常状态,此时按键缓冲区直接溢出到内存中代码执行区域,实现一定程度的编程。”
嚯!
真能编程?
池远没想到非编程计算器还有这样的玩法。
“你可以试一试,反正等待挺无聊的。我无聊之下,把每个键位都尝试了一遍,比如按ALPHA+sin就能打出D。
最终尝试出,这个计算器能够提供A、B、C、D、X、Y、M七个变量。”
平头男又继续说道。
池远惊了。
这得多无聊,才会去尝试每个键位甚至是键位与键位之间的不同组合?
他又看了看对方的校服。
人大附中。
好家伙,这就是无聊的天才吗?
不过,他这一番话,还真引起了池远的兴趣,他本来就对编程挺感兴趣。
看着手里的函数计算器,他可以肯定,它并没有编程模块。
但作为函数计算器,它本身却内置了实现各种计算功能的程序。
只要是程序,就离不开赋值。
赋值是编程语句中最基本的一句,在编译器中,同样用‘=’来表示。
比如编程语言写出的A=1,这并不是说A=1。
而是说A原来的有其他值,现在,A被赋予了新的值‘1’,此时A的值就等于1。
有了这个想法,他又尝试了很多键位组合。
目的就是,让计算器中的‘=’不再意味着等于,而是意味着赋值。
直到他按下SHIFT+RCL。
他发现自己真的可以通过计算器自带的7个变量,完成赋值操作。
当然,展示在显示屏上的语句,看起来更像是伪码语言。
这一种语言,简单、可读性好,主要在逻辑,一般人也能看懂。
通过伪码的描述,便能由任意一种编程语言(C、Java)具体实现。
池远又继续研究了一番。
依序按下——按键1,按键SHIFT,按键RCL,按键sin。
此时,屏幕则出现了1→D的语句,代表着1赋值给了D。
编写简单的小程序,一般除了赋值语句,还需要循环语句。
这一点,则需要由冒号(SHIFT键+x^3)实现。
通过冒号将语句隔开,每按一次等号,计算器就会执行下一条语句,执行完最后一条,又会回到第一条。
比如A+1→A:A*A+B→B,翻译成变成语言便是:
While(True):
{A=A+1;
B=B+A*A;}
如果给A赋值为1,这就可以实现平方和,比如:1^2+2^2+3^2……
由于执行条件是True,它会一直来回执行。
一直按等号,就能一直算下去。
原来这么简单!
“不赖嘛,这么快就就找到了赋值和循环。”
平头男凑过来看了看池远的计算器,不由地称赞了一句。
但池远仅仅是紧皱眉头,看着计算器,嘴里喃喃道:
“编程如果只有赋值和循环,总觉得差了很多,连基本的控制语句都没有。”
“这个呢,我已经趁着你研究的时候,尝试出来了。”平头男嘴角一勾。
“你先别说,让我想想。”池远赶紧抬手阻止。
就像是追番的人,突然在弹幕上看了剧透,那种期待未知的乐趣陡然减少。
他也是一个喜欢编程的人,自然希望靠自己的努力尝试出来。
突然,他抬起了头。
他想到了!
“计算器的本质就是数值运算,而控制语句在根本上只有真和假,也就是1和0。
我只需要构造一个函数,在条件为真时输出1,为假时输出0。
虽然不容易构造,但计算器有四舍五入、绝对值之类的功能,也不是不可能。”
平头男瞪大了眼睛,仔细看了看池远。
他没走错啊,这里是化学竞赛的考场啊。
这家伙不是化竞生吗?
怎么感觉自己是在搞趣味编程大赛?
他会这些,因为他是天才。
无论如何,他对池远越来越感兴趣了。
这家伙肯定是他的同类。
“你肯定也是搞多科竞赛的吧?介绍一下,我叫李浩源,目前已经集了五个省一。”
他还抬了抬黑框眼镜:
“其中有数学国二和物理国二,信息学竞赛两个省一!”
……
—题外话,日常找编剧不严谨处—
我没看过《少年派》,但我看过那个情节。钱三一那台计算器(看起来像是得力仿卡西欧fx991)能打游戏cs存疑。
计算器运行游戏这件事,肯定有原型,但那游戏不是cs,是doom或重返德军总部。
要想在计算器上运行游戏也不难,找一台贵点的图像计算器(能编程),去国外网站找代码导进去。
当然,买配件改装也可以!