位置: 编程技术 - 正文

日拱一卒(六十)(日拱一卒下一句是什么)

编辑:rootadmin
为什么编程语言的数组要从零开始算? Dijkstra 之Why numbering should start at zero

推荐整理分享日拱一卒(六十)(日拱一卒下一句是什么),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:日拱一卒出处,日拱一卒无,日拱一卒啥意思,日拱一卒的真正高手,日拱一卒下一句是什么,日拱一卒出处,日拱一卒啥意思,日拱一卒啥意思,内容如对您有帮助,希望把文章链接给更多的朋友!

为了表示出自然数的子序列,2, 3, ... , ,不使用省略记号那三个点号,我们可以选择4种约定方式:

a) 2 ≤ i < b) 1 < i ≤ c) 2 ≤ i ≤ d) 1 < i <

是否有什么理由,使选择其中一种约定比其它约定要好呢?是的,确实有理由。可以观察到,a) 和 b)有个优点,上下边界的相减得到的差,正好等于子序列的长度。另外,作为推论,下面观察也成立:在 a),b)中,假如两个子序列相邻的话,其中一个序列的上界,就等于另一个序列的下界。但上面观察,并不能让我们从a), b)两者中选出更好的一个。让我们重新开始分析。

一定存在最小的自然数。假如像b)和d)那样,子序列并不包括下界,那么当子序列从最小的自然数开始算起的时候,会使得下界进入非自然数的区域。这就比较丑陋了。所以对于下界来说,我们更应该采用≤,正如a)或c)那样。现在考虑,假如子序列包括上界,那么当子序列从最小的自然数开始算起,并且序列为空的时候,上界也会进入非自然数的区域。这也是丑陋的。所以,对于上界,我们更应该采用 <, 正如a)或b)那样。因此我们得出结论,约定a)是更好的选择。

讨论:Mesa是由Xerox PARC(施乐帕克研究中心)开发出的编程语言,以上4种表示整数区间的方式,在Mesa中,全部都有专门的记号。使用Mesa的大量经验指出,采用另外三种表示方式,会不断引出拙劣和错误的代码。因此,现今有经验的Mesa程序员强烈建议,不要去使用后面三种特性,尽管它们也可以使用。不管是真是假,我也提出这个实践证据,有些人在结论还没有被实践验证时,会感觉有所不安。(讨论结束)

当处理长度为N的序列时,我们希望通过下标去区分它的元素,下一个&#;得分析的问题是,最开始的元素应该给予什么样的下标&#;。我们依然采用a)的约定,当下标从1开始时,下标区间是 1 ≤ i < N &#; 1;而当从0开始时,可以得到一个更漂亮的区间 0 ≤ i < N。所以,让我们的序数从0开始:一个元素的序数(下标),等于序列中,在它前面的元素个数。这个故事提醒我们,在经过这么多个世纪之后,最好将0当成最自然的数字。

日拱一卒(六十)(日拱一卒下一句是什么)

讨论:很多编程语言对于计数的细节并没有足够的重视。在FORTRAN语言中,下标总是从1开始;而在PASCAL语言中,采用了约定c);距今更近的语言SASL, 倒退到FORTRAN的方式:在SAL中,序列也是在正整数上进行操作。(讨论结束)

最近的一次意外事件,促使我作出以上分析。当时,我所在大学的一个数学同事,并非计算机学家,情绪激动地指责一个年轻的计算机学家“迂腐”,因为计算机学家出于习惯而从0开始计数。我的数学同事将一些出于理性考虑后而自觉采用的合理约定,视为挑衅。(就连“...结束”这种约定,也视为挑衅。“...结束”这种约定是有用的:我就知道有个学生,他想当然地认为问题在第一页试卷中结束,而差点没有通过考试。) 我认为Antony Jay陈述得对:“在众人共同组成的宗教中,异教徒必须被驱逐出去,并非因为他们可能是错的,而是因为他们可能是对的。”

========================================================最近刚刚看完《C专家编程》,里面也有提及编译器对于数组实现的原理,对于编译器来数组其实就是用一个不可变的指针变量(数组名表示)加偏移量(下标表示),从0开始就是从偏移量为0的地址开始,还有偏移量一般不是以地址为单位而是以数组元素大小为单位的,比如元素为int型一般就是每次偏移4个地址单位。

android上吹一吹功能的实现代码 原文:android上吹一吹功能的实现代码源代码下载地址:

Android:自定义控件的一些注意点 自定义控件的几个注意点如果自定义View需要设置一个不变的背景图,为了提高效率,你可以在构造方法中直接设置背景图片。无需在onDraw中绘制Bitmapback

Android的反编译与防止反编译 生活就像一把剑,有他的两面性,Android开发也一样。为了学习,我们会去查看别人的代码,而别人也会为了防止自己的成果被我们窃取而加以防护措施

标签: 日拱一卒下一句是什么

本文链接地址:https://www.jiuchutong.com/biancheng/383243.html 转载请保留说明!

上一篇:Android基础和运行机制(android基础知识)

下一篇:android上吹一吹功能的实现代码

  • 房产税的房产原值是什么
  • 以土地投资入股是否需要缴纳增值税
  • 进项税额转出时点
  • 餐饮设备租赁服务属于
  • 金税盘软件
  • 增值税额的计算公式写销售额除以1.13*0.13对吗
  • 个体工商户免费刻章
  • 小规模纳税人城市维护建设税税率
  • 商业企业销售的商品遭受损失的赔偿依据
  • 预付账款余额怎么算
  • 应征消费税的汽车为啥不能抵扣
  • 免税申请怎么办理
  • 调整已结转的税种有哪些
  • 金税四期上线对高净值人士的影响
  • 自产自销税点
  • 国税2017年16号文
  • 付工程款现金怎么做凭证?
  • 积分兑换现金消费的会计分录
  • 房子报废
  • BT模式建设项目怎么处理税收?
  • 担保贷款造成的损失可以税前扣除吗?
  • 全额抵免的计算
  • 新版edge浏览器兼容ie
  • 收到分包公司工程发票收入怎么做账
  • 七彩虹主板 wol
  • 升级声卡驱动后声音禁用了怎么恢复
  • 公司投资理财产品
  • 进项税转出怎么填报表
  • 软件和硬件的成本按销售占比做分摊怎么算
  • 处理车辆违章送什么证件
  • 税法规定哪些支出不得扣除
  • 资产评估增值额
  • php restful接口
  • 即征即退进项税转出
  • 金碟软件如何查看明细账
  • bootstrapicon
  • php array_walk_recursive 使用自定的函数处理数组中的每一个元素
  • php判断字符串是否为ip地址
  • php访问sqlserver
  • 特殊动产的一物数卖履行顺序
  • 长期借款主要包括哪些
  • 固定资产一次性扣除如何做账
  • 个人所得税汇算清缴时间
  • 开收据可以列收入吗
  • zabbix 网络监控
  • mysql子查询效率如何
  • 织梦会员功能
  • 费用票有什么用处
  • 停工损失会计分录怎么写
  • SQLite Delete详解及实例代码
  • sqlserver根据查询结果创建表
  • 资产负债表应收账款期末余额公式
  • 个体工商户核定征收超额怎么缴税
  • 预收账款和其他应付款
  • 代建制取费标准
  • 已认证的发票要冲红要退票吗
  • 工程的挂靠取得收入怎么做账?
  • 一年的系统服务费多少钱
  • 债务人对债权人享有
  • 以旧换新会计科目
  • 汇款退款
  • 企业的盈余公积包括哪些
  • 获取sql表达式时错误
  • sqlserver的分页语句
  • 在wind
  • centos7 ethtool
  • 文件选项夹在哪里
  • win7系统怎么设置桌面便签
  • 写出perl中最常见4种控制流
  • 计算机入域怎么操作
  • shell可以多线程吗
  • 利用python进行
  • jquery使用教程
  • python语言面向过程吗
  • jquery入门
  • 广西公安厅有几个处长
  • 申报印花税显示未维护营行业信息
  • 办理供票资格申请
  • 税务备案表的有效期
  • 销售土地使用权的税率
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设