COMP SCI 2ME3, SFWR ENG

Assignment 4
COMP SCI 2ME3, SFWR ENG 2AA4
March 29, 2019
Assigned: March 22, 2019
Spec and Code: April 9, 2019
Last Revised: March 29, 2019
All submissions are made through git, using your own repo located at:
https://gitlab.cas.mcmaster.ca/se2aa4 cs2me3 assignments 2019/[macid].git
where [macid] should be replaced with your actual macid. The time for all deadlines is
11:59 pm.
1 Introduction
The purpose of this assignment is to design and specify modules for playing Conway’s
Game of Life. The modules should cover the Model and View portions of the Model View
Controller design pattern. You do not need to write a controller. Your unit tests will take
the role of controller.
The rules for Conway’s Game of Life can be found at:
Rules
An on-line simulator can be found at:
https://bitstorm.org/gameoflife/
Your assignment is for the module that stores the state of the game board and the
status of the game. You also need a module that can display (view) the state of the game
1
board using text based (ASCII) graphics. You may also include other modules in your
design.
Your specification should be written using LaTeX. All of your code should be written
in C++. All code files, except for testing files, should be documented using doxygen.
Your test code should use catch, version 2.
Part 1
Step 1

代做COMP SCI作业、代写gitlab留学生作业
Submit your design specification, written in LaTeX, of the MIS for the game state module
and view module. If your specification requires additional modules, you should include
their MISes as well. It is up to you to determine your modules interface; that is, you
decide on the exported constants, access programs, exceptions etc. You also determine
your state variables and specify the semantics for your access program calls. Your design
does not need to concern itself with performance.
The initial state of your game should be provided through a text file. It is up to you
to determine the structure of this file. You also need the ability to output the game state
to a file after any iteration. The output file should be in the format of the input file, so
that a new simulation can be started using the output as initial conditions.
Your design specification should include an overview/critique of your own design.
Please be specific. In particular, you should self-assess how your design performs with
respect to all of the following qualities: consistency, essentiality, generality, minimality,
cohesion and information hiding. You also should use comments in your MIS to explain
your intentions. Your goal is to quickly communicate to the marking TA your design
decisions, so that they can make a fair assessment.
Part 2
Step 2
Submit C++ code that matches the specification given in the previous step. You should
also submit code that tests your module(s) using catch 2. Document your source code
using doxygen. You code should include a makefile, with rules make test and make doc.
Performance will not be considered in the grading.
2
Notes
1. Your git repo is organized with the following directories at the top level: A1, A2, A3,
and A4. Your specification and code files should be placed in the A4 folder
2. Please put your name and macid at the top of each of your source files.
3. Your program must work in the ITB labs on mills, as specified for A3.
4. Any changes to the assignment specification will be announced in class.
It is your responsibility to be aware of these changes. Please monitor all
pushes to the course git repo.

因为专业,所以值得信赖。如有需要,请加QQ:99515681 或邮箱:[email protected]

微信:codinghelp

原文地址:https://www.cnblogs.com/nighta/p/10685393.html

时间: 2024-10-07 13:10:14

COMP SCI 2ME3, SFWR ENG的相关文章

COMP SCI 3306 Assignment 3: Frequent Itemsets, Clustering

Assignment 3: Frequent Itemsets, Clustering,AdvertisingFormative, Weight (15%), Learning objectives (1, 2, 3),Abstraction (4), Design (4), Communication (4), Data (5), Programming (5)Due date: 11 : 59pm, 3 June, 20191 OverviewRead the following caref

COMP SCI 3004/7064

COMP SCI 3004/7064 - Operating Systems Assignment 1Important Notes Handins:– For undergraduate students, you may do this assignment as a team of two studentsand hand in one submission per team.– For postgraduate students, you have to do this assignme

COMP SCI 3004/7064 - Operating Systems

COMP SCI 3004/7064 - Operating Systems Assignment 2DUE: 23:30pm, 28th Oct, 2019Important Notes• Handins:– The deadline for submission of your assignment is 23:30pm, 28th Oct, 2019.– For undergraduate students, you may do this assignment as a team of

COMP SCI 3004/7064 - Operating Systems Assignment

COMP SCI 3004/7064 - Operating Systems Assignment 2DUE: 23:30pm, 28th Oct, 2019Important Notes• Handins:– The deadline for submission of your assignment is 23:30pm, 28th Oct, 2019.– For undergraduate students, you may do this assignment as a team of

C++ and OO Num. Comp. Sci. Eng. - Part 2.

本文参考自<C++ and Object-Oriented Numeric Computing for Scientists and Engineers>. 1. Basic Types 在 C++ 中,变量的声明不必像 C 和 Fortran 一样放在程序最前方,可以在变量使用前声明,增加程序可读性. C++ 中有布尔类型变量,关键字为 bool. C++ 中标准库内 numeric_limits 模板函数可以返回不同类型变量的最大值与最小值. C++ 内标示符要求由字符.数字与下划线组成,

C++ and OO Num. Comp. Sci. Eng. - Part 5.

类 class 关键字提供了一种包含机制,将数据和操作数据的方法结合到一起,作为内置类型来使用. 类可以包含私有部分,仅其成员和 friend 类访问,公有部分可以在程序中任意位置处访问. 构造函数与类重名.析构函数用来定义对象销毁时操作. class pt2d { // class for 2D points private: // private members double x; // x coordinate double y; // y coordinate public: // pu

2008 SCI 影响因子(Impact Factor)

Excel download 期刊名缩写 影响因子 ISSN号 CA-CANCER J CLIN 74.575 0007-9235 NEW ENGL J MED 50.017 0028-4793 ANNU REV IMMUNOL 41.059 0732-0582 NAT REV MOL CELL BIO 35.423 1471-0072 PHYSIOL REV 35.000 0031-9333 REV MOD PHYS 33.985 0034-6861 JAMA-J AM MED ASSOC 3

数据库系统概念笔记-引言

 数据库管理系统(DBMS)由一个互相关联的数据的集合和一组用以访问这些数据的程序组成.这个数据集合通常称作数据库,其中包含了关于某个企业的信息.   DBMS的主要目标是要提供一种可以方便.高效地存取数据库信息的途径. 1.1 数据视图 1.1.1 数据抽象 一个可用的系统必须能高效地检索数据.这种高效性的需求促使设计者在数据库中使用了复杂的数据结构来表示数据,但是,有很多数据库用户不懂这些.为此,数据库的系统开发人员通过如下几个层次上的抽象来对用户屏蔽复杂性,以简化用户与系统的交互: 物理层

关系模型介绍

2.1 关系数据库的结构 关系数据库由表(table)的集合构成,每个表有唯一的名字.例如,instructor表记录了有关教师的信息,它有四个列首:ID.name.dept_name和salary.该表中每一行记录了一位教师的信息,包括该教师的ID.name.dept_name以及salary.类似的,course表存放了关于课程的信息,包括每门课程的course_id.title.dept_name和credits.注意,每位教师通过ID列的取值进行标识,而每门课程则通过course_id列