一直以来,赵小辉对自己设计的程序充满信心。今天他有点坐不住了。
三天天,同事鲁建林请他帮忙核实一套数据。鲁建林先是用目前市面上一套商业插件计算出来的特征码居然有重复,根据规则这是绝对不可能发生的一种情况,鲁建林反复检查,始终没能检查出问题在哪里。不得已,只有请教赵小辉。
赵小辉技术能力在全公司是超一档的存在,作为技术部经理,他平时也很乐意帮助同事解决项目中遇到的各种难题,尤其是一些数据计算方面。他在三十五岁的时候自学,掌握了一门编程语言,最适合数据计算,几年下来,他也通过解决工作中的问题,开发了不少自己的程序。
他一看到鲁建林提出的问题,不由自主地笑出声来,几年前,他开发过一套类似的程序,数学原理完全一样,只需要根据建林需要的特征码,稍微改造下即可。小辉一口答应下来,笑着说:“建林,下午来拷程序就行。我顺便给你说下怎么用。”
鲁建林得到想要的答案,连说几句谢谢,踩着轻快的步子回去了。
小辉稍加改造原来的程序,很快运行通过,他先试着算了几组特征码,没有重复。小辉心里暗自高兴,还有点看不起商业软件,什么商业软件,连重复这种低级问题都避免不了,还不如他这个业余开放者。
小辉一边乐,一边反复运行程序,结果始终没有重复,他有点飘。又不知道触动哪根神经,或许他是为了增加挑战难度,证明自己的技术水平。他忽然想起把规程上的示例数据实现一遍,再没有比规范更权威的证明了。
说干就干,小辉翻开规范,照着示例输入数据,点击计算,第一个特征码出来了。他仔细核对下,完全一样,他有点兴奋,看来他的程序计算方面应该没有错误。他照着示例,再输入一组数据,运行过后,他满心以为又会一致。结果却给他来了当头一棒,特征码比示例小了一。小辉有点不信,他觉得有可能是输入数据有误,于是他再次输入这组数据,计算之前,他又反复核对,输入数据无误。结果却依然比示例小了一。
会不会是示例错误?毕竟只差一点,有可能是进位取舍问题,小辉觉得有必要把剩下的示例全部计算一遍。剩下的五六个示例计算下来,小辉有些失望,只有一个示例吻合,其他示例结果全部都是小了一。
全部都小了一,说明不是偶然情况,应该是他程序的进位取舍有问题。
认识到问题,小辉开始琢磨程序内的计算公式,对着规程示例,逐步核对,终于在一个除法计算发现问题,程序计算结果保留很多位小数,而规程示例这一步结果刚好到整数。由于下一步要取整计算,刚好在这里差了。
找到问题所在,小辉马上某度,找到协调方法,再次修改程序,跑完所有示例,完全吻合。
下午鲁建林如愿获得正确结果。
网友评论