重生1984,差点被学校开除

第646章 赵氏课堂

海棠书屋备用网站

    听到赵宏图说这三种编程思想,雷布斯点点头。
    他也是这么觉得。
    赵宏图看了看,公司的人,比当初在学校的学生,听课可要认真多了。
    可赵宏图知道,这里边大部分人,是听不懂自己在说什么。
    有些人连电脑键盘上的按键都还不熟悉呢,就来听编程思想。
    有点太为难人了。
    不过,不管听不听得懂,至少这个态度,是非常端正的。
    赵宏图点点头,继续说道,“我给大家出一个题目吧,把大象装进冰箱里,该怎么做?”
    雷布斯的大脑,立马像电脑cpu一样高速运算。
    亚洲象肩高3.7至4.1米,体重3至5吨。
    非洲象肩高4.3至4.5米,体重5.5至8吨。
    非洲森林象平均肩高不超过2.7米,体重3.5吨。
    家用电冰箱的容积通常为20~500升。
    要想把大象装进冰箱里,这根本就不可能。
    可赵宏图给大家出这个题目。
    那肯定不可能说没有答案。m.qqxsnew
    赵宏图没有说是几个冰箱,难道?
    不行,不行,这样肯定不合适。
    或许可以发散一下思维。
    是不是可以用数学方法来解答这个问题?
    学霸的思维,就是和一般人不一样。
    没多大一会,雷布斯就举起手,“赵总,是不是可以用数值计算方法:1.把大象的尾巴放进去,剩余部分当作余项处理。2.用最快的pentium解决这个问题。”
    张大山本来还在苦苦琢磨解题思路,然后被雷布斯给启发了。
    你用数值计算方法,我可以用线性代数方法啊。
    数学就是万能的。
    “赵总,通过线性代数方法可以这样来解决,1.把大象的基先放进去,再在冰箱里张成空间。
    2.把大象作奇异值分解,去掉大于冰箱维数所对应的特征值,由剩余特征向量即可恢复出一只可以放进冰箱之中的大象。”
    在座的被赵宏图这个问题,问得一脸懵。
    然后听到学霸的解答,更是一头雾水。
    每个词好像都听得懂。
    但组合到一块,那是说的什么意思?
    我是谁?
    我在哪里?
    我是在干什么?
    他们都怀疑自己是不是真实的存在。
    赵宏图这个出题人,都被雷布斯和张大山给弄得一脸懵。
    这题目还可以用数学来解答么?
    自认为数学学得很好的赵宏图,这时候都怀疑自己两辈子的数学,是不是没有学到家。
    可是,这里还有一个数学专业毕业的。
    鲍越桥一看两个非数学专业出身的,在自己面前秀数学,不能忍啊。
    他举手,经得赵宏图同意后,走到黑板前,边说边写:
    “赵总,我这有三种方法,一种是利用代数拓扑方法:把冰箱内部用它的包r^3替代。(补充,或证明pi1(冰箱)=0);
    第二种方法,可以用集合论方法:
    1.冰箱={大象}
    2.大象和冰箱的内部有相同的势c。
    第三种方法:分析学方法:
    1.先把大象微分,然后把它放到冰箱里,再在冰箱里把它积分。
    2.重新定义冰箱或者大象的测度(如radon测度)。
    3.用banach-tarski定理。”
    王将民感觉自愧不如。
    看来职工业务大学和真正的大学还是有很大的区别。
    当初自己就应该参加高考,改变一下自己的命运。
    姜伟民也觉得自己的知识储备有点不够用了。
    自己这65年毕业的大学生,和80年代毕业的大学生,真是不能比。
    几吨重的大象,硬是被他们用数学方法给装进了几百升冰箱里边去了。
    关键是你还没法反驳。
    科技信息中心还有不少大学生,这时候也觉得,赵宏图给这些人,一年几十万。
    那确实是有道理的。
    这么困难的问题,都能有办法给你解决了。
    赵宏图看着面前的这几个人,这真是自己公司需要的人才么。
    怎么感觉要是往前几百年,妥妥地一个个都是奸臣。
    要是去势了,魏九千岁都甘拜下风。
    勇敢地小刘这时候,又开始勇敢起来,“赵总,是不是只要三步,打开冰箱,把大象放进去,关上冰箱?”
    赵宏图赞许地看了小刘一眼,这还是有明白人嘛。
    赵宏图把黑板上那些高大上的东西,都给擦了。
    “对,如果我们采用面向过程的思想,可以分为三步:
    1.打开冰箱门
    2.把大象塞进去
    3.关上冰箱门
    面向过程编程就是分析出解决问题所需要步骤,然后分别实现每一步,再一步步执行即可。”
    王将民觉得这才对嘛,咱们是在听赵宏图讲编程思想,差点就被雷布斯给带到数学那不归路上去了。
    计算机才是正道嘛。
    雷布斯拍了一下自己的脑袋,自己是计算机方面的天才,刚才怎么没想到这个答案呢。
    那用c语言该怎么解决呢?
    “将大象编码成二进制文件,然后编译进冰箱的程序代码里。”
    一不小心,把这个解决问题的方法,给嘀咕了出来。
    王将民也被雷布斯给带歪了,“把大象放进冰箱会使冰箱的冷冻区溢出,这将导致攻击者获得冰箱的系统权限。”
    这妥妥地一个计算机安全专家啊。
    赵宏图感觉这课是上不下去了。
    瞪了雷布斯一眼。
    雷布斯很识相地闭上了嘴巴,其实如果给他一个电脑,他可以用fortran把代码都给写出来。
    赵宏图看了看大家,“刚才我讲的是采用面向过程的思想,那面向对象编程思想怎么做呢?
    那就要先知道面向对象是什么?
    搞清楚啥是对象?
    对象是女朋友吗?在计算机的世界里,答案肯定不是。
    任何我们想要探究的事物都可以当作一个对象,比如我们可以把你家的冰箱理解为一个对象,我们就可以研究你家冰箱由哪些部分(指令装置等)组成,你家冰箱能干什么(制冷、调温等)?”
    雷布斯这时候,没有跳出来活跃气氛了。
    赵宏图点点头,继续说道,“对象的行为其实是对其属性的操作,比如对制冷器操作就可以制冷,给灯带通电就可以照明。
    对象=属性+行为。”
    赵宏图开始在黑板上板书,“接着我们开始采用oop的方法把大象装进冰箱
    1.调用:冰箱->打开门(行为)
    2.调用:冰箱->装东西(行为)
    3.调用:冰箱->关闭门(行为)
    看起来和面向过程没啥区别,但我们的思想发生了重大的转变,我们把冰箱当作了一个独立的对象,我们是通过和冰箱这个对象交互完成了整个过程。”
    懂得自己听懂了。
    不懂的怎么样也听不懂。
    但他们把对象=属性+行为这个概念,算是给记住了。
    说到这里,赵宏图把粉笔放在桌上,“小雷,还一个函数式思想,伱和大家讲讲呗。”
    雷布斯很兴奋地走到台前,拿着粉笔,开始边写边说,“如果利用函数式编程,我们可以这么做:
    1.定义关进(冰箱,大象)函数
    2.实现函数:关门(放入(开门(冰箱),大象))
    可以看到多层的函数嵌套调用,这就是函数编程的魅力……”
    大家还只是听说过赵宏图上课很有意思,但有不少人还是第一次听赵宏图上课。
    赵老师的课,确实很轻松快乐。
    简简单单的一个小问题,就让大家了解了编程思想。
    激发了大家对计算机世界的兴趣。
    更加重要的是,这一堂课,也拉近了赵宏图和科技信息中心人员的距离。