“程序设计技术和方法”大作业-2
在下面几个项目中任选一个。作业应按时独立完成,在要求的截止日期前将做好的程序和一个作业报告用邮件提交给自己的辅导老师。暂定截止日期为 2014 年 6 月 7 日(本学期课程结束时间)

报告应该包含如写内容:

  • 简要说明自己完成的工作
  • 所完成的系统的基本设计,重要过程的设计和设计思想
  • 考虑了哪些问题,作出了哪些设计选择,为什么这样做
  • 所做的运行试验和效果,发现的情况和问题
  • 分析所做设计的有点和缺点,所完成的系统的优势以及重要缺陷,可能如何改进等
程序请尽可能写得清晰规整,加上必要注释,请务必标明姓名和学号。
最后将所有源程序文件和报告打包,以proj2+自己学号作为打包文件名提交辅导教师:
     徐源盛 分工负责:信息学院同学
     刘海洋 分工负责:数学学院和其他学院同学
可选项目序号 项目作业说明:前面两个项目可以采用自己熟悉的其他语言(如 C/C++/Java 等)完成,后面三个项目用 Scheme 完成
1 在某个语言里实现数字电路系统模拟的基本功能。

这里要求实现支持简单数字系统模拟的基本功能,例如用 C 语言里的一批函数,或者 C++/Java 里的一组类。基于它们可以根据具体的逻辑线路增加一些定义,做出一个可以运行并模拟该逻辑电路的系统。作为实例,请基于你实现的基本系统功能定义书上的半加器和全加器电路,写出一个主程序,使整个程序可以运行,并展示出半加器和全加器的模拟运行效果。(参考书上的情况)

在本项目的报告中,首先详细说明你完成的工作和所采用的基本设计。并对你完成的实现和书上的实现做一些比较,从设计上、结构上、实现的技术上、语言的支持、实现的方便性、所完成系统的易修改扩充性等方面。

2 在某个语言里实现约束传播计算系统的基本功能。

本课题的要求同上一个课题。你同样需要做出一个可以运行的系统实例。

3 这是一个有关求值器的项目,相关说明文件见这里的链接

本项目要求你用书中求值器的代码做一些试验,并做一些扩充。

4 这是 MIT 的一个有关在 Scheme 上的一个面向对象语言的项目,相关文件见这里的链接

本项目要求你学习题目提供的相关代码,并基于有关代码做一些试验和扩充。本题目有一定难度,其中 exercise 10 作为选做。

本页及相关页面(除另声明者外)由裘宗燕创建维护,可自由用于各种学习活动。其他使用需得到作者许可。