第二十章 化学分子式


小说:编程之战   作者:程序小猿   类别:未来世界   加入书签   【章节错误/点此举报】   【更新慢了/点此举报
推荐阅读: 永恒剑主 | 星光灿烂 | 巨星夫妻 | 弑天刃 | 九重神格 | 超警美利坚 | 步步惊唐 | 绝世天君 | 都市幻界 | 异度
笔趣阁 //www.boquge.com/book/105094/ 为您提供编程之战全文阅读!注册本站用户,获取免费书架,追书更方便!
  “嘿嘿”,系统扑哧一笑。
  “你呀,有点小聪明,但还是得踏踏实实地学”。
  杨成阴着个脸,就跟霜打的茄子一般。
  “好咯”,杨成把自个乌黑浓密的头发顺手一拂动。
  “系统小老师,请问下一关卡是什么东东呀?”
  “我给你安排了一位大师,你得虚心点啊小伙子”。
  下一刻,杨成出现在了一个干干净净的化学实验室里面。
  周围摆满了各种仪器设备,以及叫都叫不出名字来的瓶瓶罐罐。
  “小杨,你过来一下”。
  一个穿着白色工作服的中年男子喊住了他。
  杨成脑海中立刻出现了中年男子的身份信息。
  “苏青莲,科学院化学研究所研究员,负责化学元素方向的研究”。
  “苏教授,您有什么事吗?”。
  杨成不敢有丝毫怠慢。
  “小杨啊”,苏青莲递给他一份文件。
  “你是软件工程专业毕业的,看能不能帮我把这些简单的,复杂的化学分子式,解析一下,算出一个分子中各种原子所占的数量比例来”。
  “比方说,水分子‘H2O‘,它的构成是2个氢原子,1个氧原子,那氢原子占了三分之二,氧原子占了三分之一”。
  “再比如说,氢氧化镁‘Mg(OH)2‘,由1个镁原子,2个氧原子,2个氢原子构成,各自的比例是多少,要算一下”。
  苏教授耐心地解释着,尽显学者之风。
  “没问题,苏教授,我先看看”。
  杨成接过文件,从上往下仔仔细细地扫了一遍。
  “Fe(NO3)2”
  “K4[ON(SO3)2]2”
  ......
  杨成看到这些化学分子式一个比一个复杂,顿时有些头大。
  不过好在他很快通过观察发现了一些规律:
  这些分子式中,有可能出现很多成双成对的括号,包括圆的,方的,卷曲的。
  而括号后面如果跟随了数字,那就表明,括号里的原子数量要乘以多少倍。
  例如“Fe(NO3)2”,它由一个铁原子,两个氮原子,六个氧原子组成。
  这个题目的难点在于括号的处理上,有三种类型的括号,括号与括号之间有嵌套,有N对括号的情况。
  所以首先第一步,就是统一括号,将大括号,中括号全部转化为小括号。
  第二步正式开始解析,从左到右扫描分子式字符串,遇到小括号就将括号内的内容递归,统计原子数目。
  第三步,用各种原子的数目除以总数,就可以求出各自所占的比例来。
  有了正确的思路,写出代码不过是水到渠成的事情。
  杨成只花了一个小时就搞定了编码任务。
  而他更多的时间则花在了对分子式的测试上面。
  几个小时后,苏青莲走过来。
  “小杨,完成得怎么样了?有没有遇到难点?”
  杨成转身递给他一张密密麻麻写满了各种比例的文件。
  “做的不错”,苏青莲微笑着点点头。
  “叮!恭喜您完成了化学分子式解析任务!”
  “当前积分43分,击败了全球24%的玩家,请您再接再厉!”
  “成成好棒!”,系统点了个赞。
  “我先去找网吧老板,买一箱方便面,租个单间,这样就能度过一个月啦!”