构造过程抽象.PDF

  1. 1、本文档共22页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
构造过程抽象

1. 构造过程抽象(2) 表达式,值,define 过程的内部定义和块结构 分析过程(静态,描述)产生的计算进程(动态,行为) 计算进程的类型 线性递归 线性迭代 树形递归 计算的代价 程序设计技术和方法 裘宗燕,2014-3-6 / 1 表达式的一些情况 变量 如果一个变量没定义,对它求值是错误,求值中断 如果变量有定义,求值得到它当时的关联值 内部过程 对内部过程名求值得到某种特殊信息。如(不同系统可能不同) + 得到 #procedure:+ 组合过程 对自己定义的过程名求值也得到特殊信息。如 (define (square x) (* x x)) square 得到 #procedure:square 特殊形式的名字不能求值 例如,对 define 求值将出错 程序设计技术和方法 裘宗燕,2014-3-6 / 2 基本类型和表达式(自求值表达式) Scheme 有一组基本类型 数值类型 整数,如 1,17, 2035 Scheme (Racket)支持任意大的整数及其精确运算,如 (* 123456789 987654321 99999999999999999) 实数,如 3.57, 其他数值类型 …… 数值类型的运算: 基本算术运算:+ - * ... 比较和判断(得到逻辑值): ... zero? even? ... 常用函数:abs quotient remainder module sin ... 随机数生成,如 (random 10),(random 1.0) 程序设计技术和方法 裘宗燕,2014-3-6 / 3 基本类型和表达式 布尔类型,逻辑值 #t 和 #f,逻辑运算 逻辑真表达式:#t 逻辑假表达式:#f 字符类型 写起来比较麻烦,编写简单程序时使用较少 #\a #\B #\{ #\space #\newline 字符类型的操作 字符比较:char=? char? ... 其他操作:char-upcase ... 数值字符转换:char-digit digit-char ... 程序设计技术和方法 裘宗燕,2014-3-6 / 4 基本类型和表达式(自求值表达式) 字符串类型 Peking University, Mathematics, information science 字符串运算(操作) 常用操作:string-length string-ref (取串中字符) …… 字符串比较:string=? string? …… 模式匹配:(string-search-forward pattern string ) …… 其他:string-append (拼接) (substring m n) …… 还有一些其他类型 包括下一章要讨论的组合数据类型 有关情况可以查阅语言手册和用户手册 程序设计技术和方法 裘宗燕,2014-3-6 /

文档评论(0)

xiaozu + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档