程序设计方法(中文版)

出版时间:2003-12  出版社:人民邮电出版社  作者:Matthias Fellise  页数:460  
Tag标签:无  

内容概要

  《程序设计方法》以Scheme语言为基础介绍计算和程序设计的一般理论和实践。《程序设计方法》由8个部分和7个独立的章节(第8、13、18、24、29、33、38章)组成。8个部分主要讨论程序设计,独立章节则介绍一些与程序设计和计算相关的话题。《程序设计方法》第1至第3部分介绍了基于数据驱动的程序设计基础。第4部分介绍了程序设计中的抽象问题。第5部分和第6部分是与递归及累积相关的内容。《程序设计方法》的最后两部分说明了设计程序的意义,阐述了如何应用前6个部分所描述的程序设计诀窍,以及使用赋值语句必须特别小心的一些问题。  《程序设计方法》可作为高等院校计算机科学与技术专业“程序设计导论”和“计算导论”的教材和教学参考书,也可作为函数式语言和Scheme语言的入门教材。

书籍目录

第一部分 简单数据的处理第1章 学生、教师和计算机 3第2章 数、表达式和简单程序 52.1 数和算术运算 52.2 变量和程序 62.3 字处理问题 92.4 错误 102.5 设计程序 12第3章 程序就是函数加上变量定义 153.1 函数复合 153.2 变量定义 173.3 函数复合练习 18第4章 条件表达式和函数 204.1 布尔类型和关系 204.2 函数和条件测试 224.3 条件和条件函数 254.4 条件函数的设计 27第5章 符号信息 31第6章 复合数据之一:结构体 346.1 结构体 346.2 补充练习:绘制简单图形 366.3 结构体定义 386.4 数据定义 416.5 设计处理复合数据的函数 436.6 补充练习:圆和长方形的移动 466.7 补充练习:刽子手游戏 49第7章 数据的多样性 527.1 数据混合与区分 527.2 设计处理混合数据的函数 557.3 再论函数复合 587.4 补充练习:图形的移动 607.5 输入错误 61第8章 语法和语义 638.1 Scheme的词汇 638.2 Scheme的文法 648.3 Scheme的含义 658.4 错误 688.5 布尔值表达式 708.6 变量定义 718.7 结构体的定义 72第二部分 任意数目数据的处理第9章 复合数据类型之二:表 779.1 表 779.2 任意长的表的数据定义 809.3 处理任意长的表 829.4 设计自引用数据定义的函数 849.5 更多关于简单表的例子 86第10章 表的进一步处理 9010.1 返回表的函数 9010.2 包含结构体的表 9310.3 补充练习:移动图片 98第11章 自然数 10011.1 定义自然数 10011.2 处理任意大的自然数 10111.3 补充练习:创建表,测试函数 10311.4 自然数的另一种数据定义 10411.5 更多与自然数有关的性质 108第12章 三论函数复合 11012.1 设计复杂的程序 11012.2 递归的辅助函数 11112.3 问题泛化与函数泛化 11412.4 补充练习:字母的重新排列 117第13章 用list构造表 119第三部分 再论任意大数据的处理第14章 再论自引用数据定义 12514.1 结构体中的结构体 12514.2 补充练习:二叉搜索树 13114.3 表中的表 13514.4 补充练习:Scheme求值 137第15章 相互引用的数据定义 13915.1 由结构体组成的表与结构体中的表 13915.2 为相互引用的定义设计函数 14415.3 补充练习:网页再谈 145第16章 反复精化设计 14716.1 数据分析 14716.2 定义数据类型,再改进它们 14816.3 改进函数和程序 150第17章 处理两种复杂数据片段 15217.1 同时处理两个表:第一种情况 15217.2 同时处理两个表:第二种情况 15417.3 同时处理两个表:第三种情况 15617.4 函数的简化 15917.5 设计读入两个复杂输入的函数 16017.6 处理两个复杂输入的练习 16117.7 补充练习:Scheme求值之二 16417.8 相等与测试 165第18章 局部定义和辖域 17218.1 用local组织程序 17218.2 辖域和块结构 183第四部分 抽象设计第19章 定义的相似性 18919.1 函数的类似之处 18919.2 数据定义的类似之处 195第20章 函数也是值 19920.1 语法和语义 19920.2 抽象函数和多态函数的合约 200第21章 抽象设计的例子 20421.1 从实例中抽象 20421.2 抽象表处理函数的练习 20821.3 抽象与惟一控制点 20921.4 补充练习:再论图片移动 21021.5 注意:由模板设计抽象 211第22章 使用函数进行抽象设计 21322.1 返回函数的函数 21322.2 把函数当成值来进行抽象设计 21422.3 图形用户界面初探 216第23章 数学方面的例子 22323.1 数列和级数 22323.2 等差数列和等差级数 22523.3 等比数列和等比级数 22523.4 函数曲线下方的面积 22823.5 函数的斜率 229第24章 定义匿名函数 23424.1 lambda表达式的语法 23424.2 lambda表达式的辖域和语义 23524.3 lambda表达式的语用 237第五部分 生成递归第25章 一种新的递归形式 24125.1 为桌上的一个球建立模型 24225.2 快速排序 244第26章 设计算法 24826.1 终止 24926.2 结构递归与生成递归的比较 25126.3 做出选择 252第27章 主题的变更 25627.1 分形 25627.2 从文件到行,从表到表的表 26027.3 二分查找 26327.4 牛顿法 26727.5 补充练习:高斯消去法 269第28章 回溯算法 27328.1 图的遍历 27328.2 补充练习:皇后之间的相互攻击 277第29章 计算的代价和向量 28029.1 具体的时间和抽象的时间 28029.2 “阶”的定义 28429.3 向量初探 286第六部分 知识累积第30章 知识的丢失 29730.1 一个与结构处理相关的问题 29730.2 一个关于生成递归的问题 300第31章 设计带累积器的函数 30431.1 认识累积器的必要性 30431.2 带累积器的函数 30531.3 把函数转换成带累积器的变体 306第32章 使用累积器的更多例子 31532.1 补充练习:有关树的累积器 31532.2 补充练习:传教士和食人者问题 31932.3 补充练习:单人跳棋 321第33章 非精确数的本质 32333.1 固定长度的数的算术运算 32333.2 上溢出 32733.3 下溢出 32833.4 DrScheme数 328第七部分 改变变量的状态第34章 函数的记忆 333第35章 对变量赋值 33735.1 简单的、能工作的赋值 33735.2 顺序计算表达式 33935.3 赋值和函数 34035.4 第一个有用的例子 342第36章 设计有记忆的函数 34636.1 对记忆的需求 34636.2 记忆与状态变量 34736.3 初始化记忆的函数 34836.4 改变记忆的函数 349第37章 使用记忆的例子 35437.1 状态的初始化 35437.2 与用户交互并改变状态 35637.3 在递归中改变状态 36237.4 状态变量的练习 36737.5 补充练习:探险 368第38章 最终的语法和语义 37138.1 Advanced Scheme的词汇 37138.2 Advanced Scheme的文法 37138.3 Advanced Scheme的含义 37338.4 Advanced Scheme中的错误 383第八部分 复合值的改变第39章 封装 38939.1 状态变量的抽象 38939.2 封装练习 397第40章 可改变的结构体 39940.1 由函数得出结构体 39940.2 可变的函数结构体 40140.3 可变的结构体 40340.4 可变的向量 40940.5 改变变量与改变结构体 410第41章 设计改变结构体的函数 41441.1 为什么改变结构体 41441.2 结构体的设计诀窍与变化器之一 41441.3 结构体的设计诀窍与变化器之二 42341.4 补充练习:最后一次移动图片 431第42章 相等 43342.1 外延相等 43342.2 内涵相等 434第43章 修改结构体、向量和对象 43743.1 关于向量的更多练习 43743.2 带循环的结构体集合 44843.3 状态的回溯 455结束语 458计算 458程序设计 458继续学习 459

图书封面

图书标签Tags

评论、评分、阅读与下载


    程序设计方法(中文版) PDF格式下载


用户评论 (总计0条)

 
 

 

250万本中文图书简介、评论、评分,PDF格式免费下载。 第一图书网 手机版

京ICP备13047387号-7