摘要:
一、主函数一个程序解决一个问题。那么就可以用一个主函数解决这个问题。二、子程序这个函数会变得很长,读起来很辛苦,咋办?分解成若干子程序,让主函数调用他们。那么怎么划分?基于什么原则?子程序的划分,基于逻辑层次;阅读是基于一定层次的,比如事件的概要和事件的细节的差别;文章的目录和文章的内容的区别;要想快速的了解一件事,只需要知道概要便可以。主函数就是记录概要的地方,而子程序是具体的内容;假如子程序还是太复杂,那么还能细分成子子程序,由子程序在它的层面上去提取概要信息。是否可以无限的细分下去?直到子程序变得足够简单?最好不要!子程序是一个片段,相当于把一个完整的流程给片面化,那么这个子程序本身就是 阅读全文
搜索
积分与排名
- 积分 - 308563
- 排名 - 3168
随笔分类 (315)
最新评论
- 1. Re:为什么0.1无法被二进制小数精确表示?
- @诺贝尔 感谢回复!你的思路给了我一些启发...
- --safoie
- 2. Re:为什么0.1无法被二进制小数精确表示?
- @safoie 你好,确实是我数错了,是5位。...
- --诺贝尔
- 3. Re:为什么0.1无法被二进制小数精确表示?
- 您好,感谢您的补充,根据我的理解,1右移一位等于1×2=2;右移两位等于1×(2的平方) =4;右移三位等于1×(2的三次方)=8;右移四位等于1×(2的四次方)=16,右移五位的话才等于1×(2的五...
- --safoie
- 4. Re:为什么0.1无法被二进制小数精确表示?
- @safoie 你好,这里的算法表现力不足,因为没有采用数学符号。 这里面用的就是辗转相除法。1/20,被除数向右移动一位,等于1*2,4位等于32,比除数大,然后用32-20,剩余12。 它和普通的...
- --诺贝尔
- 5. Re:为什么0.1无法被二进制小数精确表示?
1* 2* 2* 2* 2 为啥等于32?右移四位是以什么为依据的呢?
- --safoie