夏初新雨吧 关注:38贴子:2,737
  • 14回复贴,共1

上课中,给你们发我们的作业题

只看楼主收藏回复

百度都百度不到、、、、、


1楼2013-05-30 10:35回复
    1. 阅读:19世纪的传奇合作——巴贝奇与阿达
    查尔斯·巴贝奇 (Charles Babbage,图6.3) ,世界公认的“计算机之父”。他是一位富有的银行家的儿子,1792年出生在英格兰西南部的托格茅斯,后来继承了相当丰厚的遗产,但他把金钱都用于科学研究。童年时代的巴贝奇显示出极高的数学天赋,考入剑桥大学后,他发现自己掌握的代数知识甚至超过了教师。1817年获硕士学位,1828年受聘担任剑桥大学“卢卡辛讲座”的数学教授,这是只有牛顿等科学大师才能获得的殊荣。


    图6.3 巴贝奇 图6.4 阿达
    1820年巴贝奇创建剑桥大学分析学会;1827年出版了从1到108000的对数表;1831年,他领导建立英国科学进步协会;1832年出版《机械制造经济学》;1834年创立伦敦统计学会;1864年出版《一个哲学家的生命历程》。巴贝奇发明了差分机和分析机。巴贝奇一生还有许多发明,如:铁路排障器;功率计;统一邮资规范;格林威治时间信号;日光摄影光学望远镜等等。
    1871年,在他离开人世的时候,有人把他的大脑用酒精保存起来,想经过若干年后,用更先进技术来研究他大脑保存的精神。在靠近月球的北极,有一个陨石坑被命名为“巴贝奇坑”,科学界将永远缅怀他的功绩。1977年,为了研究信息革命的历史,美国建立了巴贝奇研究所
    (简称CBI) 。
    1842年,英国政府宣布断绝对巴贝奇的一切资助,科学界的同行则讥笑他是“愚笨的巴贝奇”,公然称差分机“毫无任何价值”。然而,巴贝奇没有灰心丧气,他为自己确定了一项更大胆的计划——研制一台通用计算机。这种新机器被命名为“分析机”,巴贝奇希望它能自动解算有100个变量的复杂算题,每个数达25位,速度达到每秒钟运算一次。
    巴贝奇设计的分析机不仅包括齿轮式“存贮仓库”(Store) 和“运算室”即“作坊”
    (Mill) ,而且还有他未给出名称的“控制器”装置,以及在“存贮仓库”和“作坊”之间运输数据的输入输出部件。巴贝奇以他天才的思想,划时代地提出了类似于现代电脑五大部件的逻辑结构。
    阿达·奥古斯塔
    (Ada Augusta,图6.4) ,1815年生于伦敦,她是19世纪英国著名诗人拜伦
    (L.Byron) 的女儿,数学家,穿孔机程序创始人。因父母婚姻破裂,出生5星期后就一直跟随母亲生活。母亲安娜·密尔班克
    (A.Millbanke) 是位业余数学爱好者,阿达没有继承父亲诗一般的浪漫热情,却继承了母亲的数学才能。
    阿达19岁嫁给了威廉·洛甫雷斯伯爵,因此,史书也称她为洛甫雷斯伯爵夫人
    (Lady Lovelace) 。由于巴贝奇晚年因喉疾几乎不能说话,介绍分析机的文字主要由阿达替他完成。阿达的生命是短暂的,她对计算机的预见超前了整整一个世纪。阿达早逝,年仅36岁,与她父亲拜伦相似。根据她的遗愿,她被葬于诺丁汉郡其父亲身边。
    顶着艰难的条件和舆论压力,只有27岁的英国女数学家阿达·奥古斯塔勇敢地支持了巴贝奇的计划。阿达甚至不顾自己已是三个孩子的母亲,坚定地投身于分析机研究,成为巴贝奇的合作伙伴。在1843年发表的一篇论文里,阿达认为机器今后有可能被用来创作复杂的音乐、制图和在科学研究中运用,这在当时确是十分大胆的预见。
    在笔记里,阿达还为分析机设计提出了大量有用的建议。她准确地评价说:“分析机‘编织’的代数模式同杰卡德织布机编织的花叶完全一样”。于是,为分析机编制程序的重担,落到了这位数学才女的肩头。她写信告诉巴贝奇,她已经为如何计算“伯努利数”写作了一份规划。以现在的观点看,阿达首先为计算拟定了“算法”,然后写作了一份“程序设计流程图”。这份珍贵的规划,被人们视为“第一件计算机程序”。
    阿达设计了巴贝奇分析机上解伯努利方程的一个程序,并证明当时的19世纪计算机狂人巴贝奇的分析器可以用于许多问题的求解,她甚至还建立了循环和子程序的概念。由于她在程序设计上的开创性工作,Ada Lovelace被称为世界上第一位程序员。
    由于得不到任何资助,巴贝奇和阿达耗尽了自己全部财产,一贫如洗。1852年,因疾病缠身,阿达英年早逝,巴贝奇又独自坚持了近20年。晚年的他甚至不能有条理地表达自己的意思,但是仍然百折不挠地坚持工作。1871年,为计算机事业贡献毕生精力的这位先驱者孤独地离开了人世。分析机终于没能制造出来,未完成的一部分被保留在英国皇家博物馆里。
    巴贝奇逝世后,他的儿子亨利·巴贝奇
    (Henry Babbage) 少将制造了若干个“运算室”部件的复制品,送往世界各地保存。亨利坚定地相信,总有一天,他父亲的这种机器一定会被后人制造出来。
    美国国防部据说花了10年的时间,把所需软件的全部功能混合在一种计算机语言中,希望它能成为军方数千种电脑的标准。1981年,这种语言被正式命名为ADA (阿达) 语言。
    资料来源:软件研发名人堂 (http://www.sawin.cn/)


    2楼2013-05-30 10:36
    回复
      2. 习题与思考
      6.1 结构化程序设计有时被错误地称为“无GOTO语句”的程序设计。请说明为什么会出现这样的说法。
      答:_________________________________________________________________
      _________________________________________________________________________
      _________________________________________________________________________
      6.2 从下面关于程序编制的叙述中,选出3条正确的叙述。
      1) 在编制程序之前,首先必须仔细阅读给定的程序说明书。然后,必须如实地依照说明书编写程序。说明书中常会有含糊不清或难以理解的地方。程序员在作业时应该对这些地方做出适当的解释。
      2) 在着手编制程序时,重要的是采用既能使程序正确地按设计说明书进行处理,又易于出错的编写方法。
      3) 在编制程序时,首先应该对程序的结构充分考虑,不要急于开始编码,而要像写软件文件资料那样,很好地琢磨程序具有什么样的功能,这些功能如何安排等。
      4) 考虑到以后的程序变更,为程序编写完整的说明书是一项很重要的工作。只要有了完整的程序说明书,即使程序的编写形式难以让他人看懂也没有什么关系。
      5) 编制程序时不可缺少的条件是,程序的输入和输出数据的格式都应确定。其他各项规定都是附带的,无足轻重。
      6) 作为一个好的程序,不仅处理速度要快,而且易读易修改等等也都是重要的条件。为了能得到这样的程序,不仅要熟悉程序设计语言的语法,还要注意采用适当的规程和单纯的表现方法,注意使整个程序的结构简洁。
      答:_________________________________________________________________
      6.3 从以下关于系统程序 (基本软件) 的叙述中选出三条正确的叙述。
      1) 编译程序是为把面向问题的语言写的计算机程序翻译成面向计算机的语言而使用的计算机程序。
      2) 使用编译程序时,因为是逐句地翻译执行原始语言 (源语言) 的语句,所以便于逐条语言排错。
      3) 解释程序是接受参数,按照某一轮廓产生机器语言程序的计算机程序。
      4) 解释程序是用来逐句翻译执行原始语言的语句的计算机程序。
      5) 就执行速度而言,编译程序比解释程序慢。
      6) 解释程序适用于COBOL和FORTRAN语言。
      7) 使用解释程序时,在程序未执行完的情况下,也能重新从头执行已执行过的部分。
      8) 解释程序是为了打开编译程序的技术僵局而开发的新方法。
      答:_________________________________________________________________
      6.4
      从下列叙述中选出5条关于好的编程风格的正确叙述。
      1) 使用括号以改善表达式的清晰性。
      2) 对递归定义的数据结构不要使用递归过程。
      3) 尽可能对程序代码进行优化。
      4) 不要修补不好的程序,要重新写。
      5) 不要进行浮点的相等比较。
      6) 应尽可能多输出中间结果。
      7) 利用数据类型对数据值进行防范。
      8) 用计数方法而不是用文件结束符来判别输入的结果。
      9) 程序中的注释是可有可无的。
      10) 使用有意义的标识符。
      答:_________________________________________________________________
      6.5 从下列叙述中选出5条符合程序设计风格指导原则的叙述。
      1) 嵌套的重数应加以限制。
      2) 尽量多使用临时变量。
      3) 不滥用语言特色。
      4) 不用可以省略的括号。
      5) 使用有意义的变量名。
      6) 应尽可能把程序编得短些。
      7) 把常见的局部优化工作留给编译程序去做。
      8) 注解越少越好。
      9) 程序的格式应有助于读者理解程序。
      10) 应尽可能多地使用GOTO语句。
      答:_________________________________________________________________
      6.6 从供选择的答案中选出适当的字句填入下面关于提高程序的生产率的描述中的
      ( ) 中。
      1) 1960年底Dijkstra提倡的 ( A ) 是一种有效的提高程序设计效率的方法。
      2)
      Dijkstra为了使程序结构易于理解,把基本控制结构限于顺序、( B ) 、( C ) 3种,应避免使用 ( D ) 。
      3) (
      A ) 不仅提高程序设计的生产率,同时也容易进行程序的 ( E ) 。
      供选择的答案:
      A:
      ① 标准化程序设计
      ② 模块化程序设计
      ③ 多道程序设计
      ④ 宏语言
      ⑤ 结构化程序设计
      ⑥ 汇编语言
      ⑦ 表格处理语言
      B,C:
      ① 分支
      ② 选择
      ③ 重复
      ④ 计算
      ⑤ 输入输出
      D:
      ① GOTO 语句
      ② DO 语句
      ③ IF 语句
      ④ REPEAT 语句
      E:
      ① 设计
      ② 调试
      ③ 维护
      ④ 编码
      6.7 从供选择的答案中,选出应填入下面叙述中 ( ) 内的最确切的解答。
        编制一个好的程序首先要确保它的正确性和可靠性,除此以外,通常更注重源程序的 ( A ) 。此外,还应强调良好的编程风格,例如,选择标识符的名字时应考虑 ( B ) ;在书写语句时应考虑 ( C ) ;在书写功能性注解时应考虑 ( D ) 。
        源程序中应包含一些内部文档,以帮助阅读和理解源程序,源程序的内部文档通常包括选择合适的标识符、注解和 ( E ) 。


      3楼2013-05-30 10:37
      回复
        供选择的答案:
        A:
        ① 易使用性、易维护性和效率
        ② 易使用性、易维护性和易移植性
        ③ 易理解性、易测试性和易修改性
        ④ 易理解性、安全性和效率
        B:
        ① 名字长度越短越好,以减少源程序的输入量
        ② 多个变量共用一个名字,以减少变量名的数目
        ③ 选择含义明确的名字,以正确提示所代表的实体
        ④ 尽量用关键字作名字,以使名字标准化
        C:
        ① 把多个短的语句写在同一行中,以减少源程序的行数
        ② 尽量使用标准文本以外的有特殊功效的语句,以提高程序的功效
        ③ 尽量消除表达式中的括号,以简化表达式
        ④ 避免使用测试条件“非”,以提高程序的可读性
        D:
        ① 仅为整个程序作注解
        ③ 为程序段作注解
        ② 仅为每个模块作注解
        ④ 为每个语句作注解
        E:
        ① 程序的视觉组织
        ③ 检查输入数据的有效性
        ② 尽量不用或少用GOTO语句
        ④ 设计良好的输出报表
        3. 课程设计:指定或自选项目需求分析与概要设计文档
        在了解了软件工程标准化的基本概念和熟悉软件工程国家标准之后,我们来尝试按照国家标准GB/T8567 -1988《计算机软件开发文件编制指南》要求的格式,编制软件需求分析说明书和软件概要设计说明书。
        3.1 项目基本信息
        1) 如果是自选软件项目,则你考虑的这个项目的名称是 (并做简单描述) :
        _____________________________________________________________________
        _________________________________________________________________________
        _________________________________________________________________________
        2) 也可使用下列指定项目“物业管理系统”。读者还可以根据自己掌握的知识,完善和丰富该项目的设计。
        物业管理系统主要包括三个核心模块:物业基础资料、业主变动处理和物业费用处理。
        ① 物业基础资料模块是物业管理系统最基本的部分,该模块包括以下功能:物业基本信息、维修项目定义、费用定义、小区管理、业主基本信息等,该模块的内容是物业管理的基本依据。
        ② 业主变动处理模块实现了业主的入住与迁出过程。
        ③ 费用处理模块是物业管理的核心部分,它包括费用处理中心、报修处理中心等模块。
        一般物业管理系统涉及的主要内容包括:
        ① 业主基本信息。
        ② 小区基本信息。
        ③ 物业管理基本信息。
        ④ 维修项目信息。
        ⑤ 物业管理费用定义:业主应缴纳费用信息。
        ⑥ 迁入迁出管理:业主迁入登记和迁出处理信息。
        ⑦ 费用处理中心:业主缴纳各项费用的情况。
        ⑧ 费用时段基本表:业主应缴纳各项费用的时段信息。
        ⑨ 报修处理中心:业主报修及处理情况。
        3.2 文档设计要求
        请通过一个自选项目,或者指定的“物业管理系统”项目,根据GB/T8567-1988的要求,设计相应的软件需求说明书和软件概要设计说明书文档。
        请将设计文档按以下文件名格式保存,并在要求的日期之前,以电子邮件方式交给你的实验指导老师:
        <班级>_<学号>_<姓名>_物业管理系统需求分析.doc
        <班级>_<学号>_<姓名>_物业管理系统概要设计.doc
        请记录:
        1) 上述实验步骤能够顺利完成吗?______________________________。
        2) 请简单描述你在操作过程中所遇到的问题 (如果有的话) :
        _____________________________________________________________________
        _________________________________________________________________________
        3.3 实验总结
        _____________________________________________________________________
        _________________________________________________________________________
        _________________________________________________________________________
        _________________________________________________________________________
        _________________________________________________________________________
        3.4 实验评价
        (教师)
        _____________________________________________________________________
        _________________________________________________________________________


        4楼2013-05-30 10:37
        回复
          完全看不懂


          来自手机贴吧5楼2013-05-30 10:39
          收起回复
            好题。慢慢享用。


            IP属地:山东6楼2013-05-30 10:44
            收起回复
              这他喵的都是什么东西,,,,看都看不下去


              7楼2013-05-30 22:53
              回复
                我们这节课正在做这个题,我百度答案,结果就百度到你吧里来了,哈哈哈


                8楼2014-05-05 10:41
                收起回复