ITP 165: Introduction to C++ Programming Homework 10: Superhero fight Due: 11:59pm, December 1 st, 2017

Size: px
Start display at page:

Download "ITP 165: Introduction to C++ Programming Homework 10: Superhero fight Due: 11:59pm, December 1 st, 2017"

Transcription

1 ITP 165: Introduction to C++ Programming Homework 10: Superhero fight Due: 11:59pm, December 1 st, 2017 Goal Finishing the functionality introduced in Homework 9, you ll implement fights that can occur between Hero objects. There won t be any functionality removed only added. Setup Since we ll be revising Homework 9, it s a GoodIdea to duplicate your project folder, rename it Homework10, and start with that folder. Introduce a new pair of files: Powers.h and Powers.cpp. These files will contain several class definitions, like was demonstrated in Lab 20. Each file must begin with the in the following (replace the name and with your actual information): // Name // ITP 165, Fall 2017 // Homework 10 // USC Use the input file heroes.txt included with Homework 9 as sample input to this program. Note: this is only sample input and may be different from the input we use to test your program when grading. Part 1: Powers.h This file has 4 sections: 1. Constant integers indicating power 2. A Power abstract class 3. Individual power classes (that inherit from the Power abstract class) 4. A powerfactory function For the constant integers, create 6 const int variables, each representing a different Power. These will be used as the IDs for the Power classes. The different powers are: 1. Flight 2. Gadgets 3. Intelligence 4. Laser 5. Nationalism 6. Strength The Power abstract class must have the following: 1. A protected member variable to hold the power s description. 2. A getdescription function that receives no input and returns a std::string. Its job is to return the value in the Power s member variable that holds the description. 3. A pure virtual function called getid that receives no input and returns an int. Its job (in the child classes of Power) to return the appropriate ID (one of the 6 const int variables) from the previous section. Page 1 of 6

2 4. A pure virtual function called use that receives no input and returns no value. It will (in the child classes of Power) use std::cout to display some description of what happens when the power is used. 5. A pure virtual function called fight that receives a pointer to another Power and returns an int. It will determine based on the other Power which wins a fight between the two, the current Power or the other Power. If the other Power wins, it will return -1. In the event of a tie, it returns 0. When the current power wins, it returns 1. There should be 6 concrete class definitions, one for each power. They are to inherit from Power and should implement all of the pure virtual functions from Power. Additionally, each has a default constructor. For example, the class FlightPower would inherit from Power. It would have the default constructor (FlightPower()). Additionally it would have the functions getid, use, and fight. Finally there is a function powerfactory that exists outside of all classes in the file Powers.h. It accepts a std::string as input and returns a pointer to a dynamically created Power variable. Its job is to determine, based on the std::string passed to it, which Power to create and return a pointer to that. Part 2: Powers.cpp The getter from Power should return mdescription. The constructor for each Power subclass should set the mdescription in the super class (Power). The getid function in each Power subclass should return the appropriate const int variable that indicates which Power the class is. For example, the StrengthPower class would return the const int POWER_STRENGTH (or whatever you named it). The use function in each Power subclass displays (to std::cout) some interesting text specific to each power. The fight function in each Power subclass determines which Power subclass is passed to it (by using the getid function for the other Power variable). If the current Power wins, the function returns 1. The function returns a 0 in the event of a tie. The function returns a -1 if the current Power loses. The following matrix determines outcomes: F G I L N S Power Definitions: F G F L F F F: Flight G G I G G S G: Gadgets I F I L I I I: Superhuman intelligence L L G L L S L: Laser shooting eyes N F G I L S N: Nationalism S F S I S S S: Superhuman strength For example, if the Flight power called fight with the input of the Strength power, the result would be 1 (based on the table above). But if the input were the Laser power, the result would be -1. When the winner is determined, display (using std::cout) some interesting text to indicate the winner. The powerfactory function is not a class function. Based on the inputted std::string it dynamically creates a Power (using the new keyword) and returns a pointer to that new Power. The strings will match the original input from the heroes.txt file. For example, the string intel should generate the Power corresponding to Superhuman Intelligence. Page 2 of 6

3 Part 3: Hero.h changes For Homework 9 the Hero had a std::vector of std::string variables. That vector should now hold pointers to Power variables (std::vector<power*>). Add to the same class a public function called userandompower. It accepts no input and returns a pointer to a Power. Add to Hero a functions called takedamage, resethealth, and printhealth. They all return void and receive no input. Part 4: Hero.h changes The Hero constructor now must create a new Power*. In Homework 9, you added to a std::vector a std::string that contains a Power name. Instead, use that Power name and the powerfactory function to create a Power* and add that to the std::vector that belongs to the Hero that contains the Power* variables. The Hero function userandompower uses rand() to randomly pick a Power from the Hero s std::vector containing the Power* variables. Once a random Power is selected, its name is displayed and its use function is called to display that it s being used. Then return it. The printpowers function will need to change to use the stored Power* vector instead of std::string variables. The takedamage function decrements the Hero s current health by 1. The resethealth function sets the Hero s current health back to the maximum health. Part 5: Driver.cpp changes The loadheroes should remain the same. Note that the user may call loadheroes several times, so it might be a GoodIdea to empty the vector of Hero* variables before populating it with the Hero variables constructed from the inputted text file. The printroster should require no changes. Add a function called selecthero above the main function. It returns a pointer to a Hero and accepts the vector of Hero* variables a std::string containing the user s input. The function must determine which Hero is selected based on the std::string input and return a pointer to that Hero. For example, if the std::string contains 5 then the return value will be the Hero* from the vector at index 5. Add a function called herocombat above the main function. It should operate as follows: 1. Display the names of the Hero variables in the std::vector of Hero* variables. 2. Prompt the user for 2 Heroes using the selecthero function. 3. Have the 2 Heroes fight until one runs out of health by: Each Hero chooses a random Power with the userandompower function. A winner of the round is determined by the fight function. The loser Hero loses a point of health with the takedamage function. In the event of a tie both lose health. 4. Once a winner is determined display who won. Now implement option 3 in main by calling the herocombat function! Page 3 of 6

4 Hints 1. It is a GoodIdea to program defensively. That means you should check to make sure the user s input is valid. You aren t guaranteed valid input anymore! 2. It is a BadIdea to just quit your program. This assignment uses dynamic memory allocation (with the new keyword). You should be using delete on whatever you dynamically allocate especially if you want full credit! A Note on Style Be sure to comment your code. As we discussed in lecture, it is extremely important that your code is properly indented as it greatly adds to readability. Because of this, if you submit a code file that is not reasonably indented, you will have points deducted. Likewise, you will lose points if your variable names are not meaningful. Make sure you use variable names that correspond to what you are actually storing in the variables. Finally, Full Sample Output Below is sample output for a full run-through of the program. Your output should resemble the following but doesn t need to match it exactly (user input is in red). Choose an option: 1. Load Heroes 2. Print Hero Roster 3. Hero Fight! 4. Quit > 1 Enter the file to load: heroes.txt 10 heroes loaded. Choose an option: 1. Load Heroes 2. Print Hero Roster 3. Hero Fight! 4. Quit > 3 Here are the heroes and their indices: 0: Superman 1: Dr. Manhattan 2: Batman 3: Captain America 4: Cyclops 5: Iron Man 6: Thor 7: Hulk 8: Wonder Woman 9: Green Lantern Page 4 of 6

5 Select your first hero: 0 Select your second hero: 2 Superman has 5 health Batman has 3 health Superman SMASH!! Batman flies away, maybe far from this place. FLIGHT WINS - They just fly away out of range of the attack. Superman has 4 health Batman has 3 health Superman SMASH!! STRENGTH WINS - The gadget gets SMASHED. Superman has 4 health Superman flies away, maybe far from this place. GADGETS WINS - Rope snares make it tough to fly away. Superman has 3 health Superman SMASH!! Batman flies away, maybe far from this place. FLIGHT WINS - They just fly away out of range of the attack. Superman has 2 health Superman flies away, maybe far from this place. GADGETS WINS - Rope snares make it tough to fly away. Superman has 1 health Superman shoots lasers from their eyes. PEWPEWPEW! Batman flies away, maybe far from this place. LASER WINS - They have a good sniper shot so flying doesn't help. Superman has 1 health Batman has 1 health Superman shoots lasers from their eyes. PEWPEWPEW! GADGETS WINS - The lasers are blocked by the gadget. Batman WINS!!! Choose an option: 1. Load Heroes 2. Print Hero Roster Page 5 of 6

6 3. Hero Fight! 4. Quit > 4 Quitting... Deliverables 1. A ZIP compressed Hw10 folder containing all the.cpp and.h files (including the StrLib code files) and the heroes.txt file you used for testing. It must be submitted through Blackboard. Grading Item Points Part 1: Powers.h 15 Part 2: Powers.cpp 15 Part 3: Hero.h changes 5 Part 4: Hero.cpp changes 5 Part 5: Driver.cpp changes 10 Total* 50 * Points will be deducted for poor code style, or improper submission. Page 6 of 6

Final Project Option #1 Restaurant Simulation

Final Project Option #1 Restaurant Simulation ITP 115 Programming in Python p. 1 of 10 Final Project Option #1 Restaurant Simulation Goals Complete a project that demonstrates problem solving skills and logical thinking. Demonstrate knowledge of Python

More information

EECE.2160: ECE Application Programming

EECE.2160: ECE Application Programming Fall 2017 Programming Assignment #10: Doubly-Linked Lists Due Monday, 12/18/17, 11:59:59 PM (Extra credit ( 5 pts on final average), no late submissions or resubmissions) 1. Introduction This assignment

More information

CS Homework 11 p. 1. CS Homework 11

CS Homework 11 p. 1. CS Homework 11 CS 111 - Homework 11 p. 1 Deadline 11:59 pm on Monday, May 2, 2016 How to submit Each time you would like to submit your work: CS 111 - Homework 11 If your files are not already on nrs-labs, be sure to

More information

Lab 8 CSE 3,Fall 2017

Lab 8 CSE 3,Fall 2017 Lab 8 CSE 3,Fall 2017 In this lab we are going to take what we have learned about both HTML and JavaScript and use it to create an attractive interactive page. Today we will create a web page that lets

More information

Lab 1: Silver Dollar Game 1 CSCI 2101B Fall 2018

Lab 1: Silver Dollar Game 1 CSCI 2101B Fall 2018 Lab 1: Silver Dollar Game 1 CSCI 2101B Fall 2018 Due: Tuesday, September 18, 11:59 pm Collaboration Policy: Level 1 (review full policy for details) Group Policy: Individual This lab will give you experience

More information

CSE 142, Winter 2007 Final Exam. Name:

CSE 142, Winter 2007 Final Exam. Name: 1 of 10 CSE 142, Winter 2007 Final Exam Name: Section: Student ID #: TA: You have 110 minutes to complete this exam. You may receive a deduction if you keep working after the instructor calls for papers.

More information

CS201 - Assignment 3, Part 2 Due: Wednesday March 5, at the beginning of class

CS201 - Assignment 3, Part 2 Due: Wednesday March 5, at the beginning of class CS201 - Assignment 3, Part 2 Due: Wednesday March 5, at the beginning of class For this assignment we will be developing a text-based Tic Tac Toe game 1. The key to this assignment is that we re going

More information

CS261: HOMEWORK 2 Due 04/13/2012, at 2pm

CS261: HOMEWORK 2 Due 04/13/2012, at 2pm CS261: HOMEWORK 2 Due 04/13/2012, at 2pm Submit six *.c files via the TEACH website: https://secure.engr.oregonstate.edu:8000/teach.php?type=want_auth 1. Introduction The purpose of HW2 is to help you

More information

CS 3204 Operating Systems Programming Project #2 Job / CPU Scheduling Dr. Sallie Henry Spring 2001 Due on February 27, 2001.

CS 3204 Operating Systems Programming Project #2 Job / CPU Scheduling Dr. Sallie Henry Spring 2001 Due on February 27, 2001. CS 3204 Operating Systems Programming Project #2 Job / CPU Scheduling Dr. Sallie Henry Spring 2001 Due on February 27, 2001. 23:59:59 PM Design and implement a program that simulates some of the job scheduling,

More information

Programming Project 1

Programming Project 1 Programming Project 1 Handout 6 CSCI 134: Fall, 2016 Guidelines A programming project is a laboratory that you complete on your own, without the help of others. It is a form of take-home exam. You may

More information

UNIVERSITY OF MASSACHUSETTS LOWELL Department of Electrical and Computer Engineering. Program 8 EECE.3220 Data Structures Fall 2017

UNIVERSITY OF MASSACHUSETTS LOWELL Department of Electrical and Computer Engineering. Program 8 EECE.3220 Data Structures Fall 2017 UNIVERSITY OF MASSACHUSETTS LOWELL Department of Electrical and Computer Engineering Program 8 EECE.3220 Data Structures Fall 2017 Binary Search Trees and Class Templates Word Counter Application The object

More information

Assignment 2 Due Thursday 7/3 at 10:00 AM

Assignment 2 Due Thursday 7/3 at 10:00 AM Assignment 2 Due Thursday 7/3 at 10:00 AM Working with Strings II (25 points): Download the file StringMaster2003.java from the course web page (the assignments page). You will find code which produces

More information

Due Date: Two Program Demonstrations (Testing and Debugging): End of Lab

Due Date: Two Program Demonstrations (Testing and Debugging): End of Lab CSC 111 Fall 2005 Lab 6: Methods and Debugging Due Date: Two Program Demonstrations (Testing and Debugging): End of Lab Documented GameMethods file and Corrected HighLow game: Uploaded by midnight of lab

More information

Tips from the experts: How to waste a lot of time on this assignment

Tips from the experts: How to waste a lot of time on this assignment Com S 227 Spring 2017 Assignment 1 80 points Due Date: Thursday, February 2, 11:59 pm (midnight) Late deadline (25% penalty): Friday, February 3, 11:59 pm General information This assignment is to be done

More information

Lesson 10A OOP Fundamentals. By John B. Owen All rights reserved 2011, revised 2014

Lesson 10A OOP Fundamentals. By John B. Owen All rights reserved 2011, revised 2014 Lesson 10A OOP Fundamentals By John B. Owen All rights reserved 2011, revised 2014 Table of Contents Objectives Definition Pointers vs containers Object vs primitives Constructors Methods Object class

More information

Interfaces: JAVA CONTRACTS

Interfaces: JAVA CONTRACTS Interfaces: JAVA CONTRACTS Homework Stamp #3: Udacity Problem Set #6, #10-20 + Quiz Question #2 https://classroom.udacity.com/courses/cs046 Warm-Up SuperFriends Video Game! You ve been hired to work on

More information

CSE Lab 7 Assignment

CSE Lab 7 Assignment CSE 1341 - Lab 7 Assignment Pre-Lab There is no pre-lab this week. Lab (100 points)! The objective of Lab 7 is to create a new variation of the Spinner game you created in Lab 6. For this lab, you will

More information

1. Introduction. 2. Deliverables

1. Introduction. 2. Deliverables 16.216: ECE Application Programming Summer 2014 Programming Assignment #10: Doubly-Linked Lists Due Friday, 6/27/14, 12:00 PM (noon) NO LATE ASSIGNMENTS 1. Introduction This assignment deals with the combination

More information

UNIVERSITY OF MASSACHUSETTS LOWELL Department of Electrical and Computer Engineering. Program 9 EECE.3220 Data Structures Fall 2017

UNIVERSITY OF MASSACHUSETTS LOWELL Department of Electrical and Computer Engineering. Program 9 EECE.3220 Data Structures Fall 2017 UNIVERSITY OF MASSACHUSETTS LOWELL Department of Electrical and Computer Engineering Program 9 EECE.3220 Data Structures Fall 2017 Heaps and Heap Sort Word Counter Application Revisited The object of this

More information

Assignment 3: Distance COP3330 Fall 2017

Assignment 3: Distance COP3330 Fall 2017 Assignment 3: Distance COP3330 Fall 2017 Due: Monday, October 16, 2017 at 11:59 PM Objective This assignment will provide experience with basic operator overloading. Task Your task will be to create a

More information

CS Homework 10 p. 1. CS Homework 10

CS Homework 10 p. 1. CS Homework 10 CS 131 - Homework 10 p. 1 Deadline: 5:00 pm on Friday, December 3 How to submit: CS 131 - Homework 10 When you are done with the following problems: make sure that your current working directory on nrs-labs

More information

Initial Coding Guidelines

Initial Coding Guidelines Initial Coding Guidelines ITK 168 (Lim) This handout specifies coding guidelines for programs in ITK 168. You are expected to follow these guidelines precisely for all lecture programs, and for lab programs.

More information

Note: This is a miniassignment and the grading is automated. If you do not submit it correctly, you will receive at most half credit.

Note: This is a miniassignment and the grading is automated. If you do not submit it correctly, you will receive at most half credit. Com S 227 Fall 2018 Miniassignment 1 40 points Due Date: Friday, October 12, 11:59 pm (midnight) Late deadline (25% penalty): Monday, October 15, 11:59 pm General information This assignment is to be done

More information

PR I Setting up Your Computer

PR I Setting up Your Computer CS4379/CS5375 Dr. Jaime C. Acosta Software Reverse Engineering Homework Assignment Process Injection Due Date: October 29 th, 2017 before 11:59pm Late assignments are accepted until October 31 th, 11:59pm

More information

King Abdulaziz University Faculty of Computing and Information Technology Computer Science Department

King Abdulaziz University Faculty of Computing and Information Technology Computer Science Department King Abdulaziz University Faculty of Computing and Information Technology Computer Science Department CPCS204, 2 nd Term 2014 Program 5: FCITbook Assigned: Thursday, May 1 st, 2014 Due: Thursday, May 15

More information

Lab 4: Super Sudoku Solver CSCI 2101 Fall 2017

Lab 4: Super Sudoku Solver CSCI 2101 Fall 2017 Due: Wednesday, October 18, 11:59 pm Collaboration Policy: Level 1 Group Policy: Pair-Optional Lab 4: Super Sudoku Solver CSCI 2101 Fall 2017 In this week s lab, you will write a program that can solve

More information

Due: 9 February 2017 at 1159pm (2359, Pacific Standard Time)

Due: 9 February 2017 at 1159pm (2359, Pacific Standard Time) CSE 11 Winter 2017 Program Assignment #2 (100 points) START EARLY! Due: 9 February 2017 at 1159pm (2359, Pacific Standard Time) PROGRAM #2: DoubleArray11 READ THE ENTIRE ASSIGNMENT BEFORE STARTING In lecture,

More information

CS Fall 2018 Homework Assignment 3 Due: 23:59, Dec 26, 2018

CS Fall 2018 Homework Assignment 3 Due: 23:59, Dec 26, 2018 CS 201 - Fall 2018 Homework Assignment 3 Due: 23:59, Dec 26, 2018 In this homework, you will implement a simple phonebook. A phonebook has a list of people. Each person has a name and a list of phone numbers.

More information

CS Spring 2018 Homework Assignment 3 Due: 23:59, May 7, 2018

CS Spring 2018 Homework Assignment 3 Due: 23:59, May 7, 2018 CS 201 - Spring 2018 Homework Assignment 3 Due: 23:59, May 7, 2018 In this homework, you will implement an academic conference system (ACS). A conference has a a list of tracks. A track represents a specific

More information

A4: HTML Validator/Basic DOM Operation

A4: HTML Validator/Basic DOM Operation A4: HTML Validator/Basic DOM Operation Overview You are tasked with creating a basic HTML parser to perform a *very* limited subset of what a web browser does behind the scenes to setup the DOM for displaying

More information

Assignment 4 - Vectors, Menus, & Creatures!

Assignment 4 - Vectors, Menus, & Creatures! Assignment 4 - Vectors, Menus, & Creatures! Due Wednesday July 20, 2011 by 11:59pm You may not work on assignments during your lab time. Submit all the deliverables to the Course Management System: https://courses.cs.sfu.ca/

More information

King Abdulaziz University Faculty of Computing and Information Technology Computer Science Department

King Abdulaziz University Faculty of Computing and Information Technology Computer Science Department King Abdulaziz University Faculty of Computing and Information Technology Computer Science Department CPCS202, 1 st Term 2016 (Fall 2015) Program 5: FCIT Grade Management System Assigned: Thursday, December

More information

Assignment 5: MyString COP3330 Fall 2017

Assignment 5: MyString COP3330 Fall 2017 Assignment 5: MyString COP3330 Fall 2017 Due: Wednesday, November 15, 2017 at 11:59 PM Objective This assignment will provide experience in managing dynamic memory allocation inside a class as well as

More information

EECE.2160: ECE Application Programming

EECE.2160: ECE Application Programming Spring 2018 Programming Assignment #10: Instruction Decoding and File I/O Due Wednesday, 5/9/18, 11:59:59 PM (Extra credit ( 4 pts on final average), no late submissions or resubmissions) 1. Introduction

More information

King Abdulaziz University Faculty of Computing and Information Technology Computer Science Department

King Abdulaziz University Faculty of Computing and Information Technology Computer Science Department King Abdulaziz University Faculty of Computing and Information Technology Computer Science Department CPCS204, 3 rd Term 2014 (Summer) Program1: FCIT Samba Bank Assigned: Wednesday June 11 th, 2014 Due:

More information

CpSc 1111 Lab 6 Conditional Statements, Loops, the Math Library, and Random Numbers What s the Point?

CpSc 1111 Lab 6 Conditional Statements, Loops, the Math Library, and Random Numbers What s the Point? CpSc 1111 Lab 6 Conditional Statements, Loops, the Math Library, and Random Numbers What s the Point? Overview For this lab, you will use: one or more of the conditional statements explained below scanf()

More information

CSE 143: Computer Programming II Spring 2015 HW7: 20 Questions (due Thursday, May 28, :30pm)

CSE 143: Computer Programming II Spring 2015 HW7: 20 Questions (due Thursday, May 28, :30pm) CSE 143: Computer Programming II Spring 2015 HW7: 20 Questions (due Thursday, May 28, 2015 11:30pm) This program focuses on binary trees and recursion. Turn in the following files using the link on the

More information

CS 142 Style Guide Grading and Details

CS 142 Style Guide Grading and Details CS 142 Style Guide Grading and Details In the English language, there are many different ways to convey a message or idea: some ways are acceptable, whereas others are not. Similarly, there are acceptable

More information

EECE.2160: ECE Application Programming

EECE.2160: ECE Application Programming Summer 2017 Programming Assignment #9: Doubly-Linked Lists Due Monday, 6/26/17, 11:59:59 PM (+15% if submitted by 6/23, +10% if submitted 6/24-6/25, +5% if submitted 6/26) 1. Introduction This assignment

More information

CS Fall Homework 11 p. 1. CS Homework 11

CS Fall Homework 11 p. 1. CS Homework 11 CS 111 - Fall 2018 - Homework 11 p. 1 Deadline 11:59 pm on MONDAY, December 3, 2018 Purpose To practice with loops, arrays, and more! How to submit Submit your THREE.cpp FILES: CS 111 - Homework 11 hw11.cpp

More information

CS ) PROGRAMMING ASSIGNMENT 11:00 PM 11:00 PM

CS ) PROGRAMMING ASSIGNMENT 11:00 PM 11:00 PM CS3114 (Fall 2017) PROGRAMMING ASSIGNMENT #4 Due Thursday, December 7 th @ 11:00 PM for 100 points Due Tuesday, December 5 th @ 11:00 PM for 10 point bonus Last updated: 11/13/2017 Assignment: Update:

More information

Circular Linked List Assignment

Circular Linked List Assignment Page 1 of 6 Circular Linked List Assignment Overview A circular linked list is essentially a singly linked list in which the next pointer of the tail node is set to point to the head node of the linked

More information

CS 2223 B15 Term. Homework 4

CS 2223 B15 Term. Homework 4 CS 2223 B15 Term. Homework 4 Homework Instructions This homework is to be completed individually. If you have any questions as to what constitutes improper behavior, review the examples as I have posted

More information

Programming Assignment 2

Programming Assignment 2 CS 122 Fall, 2004 Programming Assignment 2 New Mexico Tech Department of Computer Science Programming Assignment 2 CS122 Algorithms and Data Structures Due 11:00AM, Wednesday, October 13th, 2004 Objectives:

More information

CSE 143: Computer Programming II Summer 2015 HW6: 20 Questions (due Thursday, August 13, :30pm)

CSE 143: Computer Programming II Summer 2015 HW6: 20 Questions (due Thursday, August 13, :30pm) CSE 143: Computer Programming II Summer 2015 HW6: 20 Questions (due Thursday, August 13, 2015 11:30pm) This assignment focuses on binary trees and recursion. Turn in the following files using the link

More information

CMPSCI 187 / Spring 2015 Hangman

CMPSCI 187 / Spring 2015 Hangman CMPSCI 187 / Spring 2015 Hangman Due on February 12, 2015, 8:30 a.m. Marc Liberatore and John Ridgway Morrill I N375 Section 01 @ 10:00 Section 02 @ 08:30 1 CMPSCI 187 / Spring 2015 Hangman Contents Overview

More information

Assignment 3: Inheritance

Assignment 3: Inheritance Assignment 3: Inheritance Due Wednesday March 21 st, 2012 by 11:59 pm. Submit deliverables via CourSys: https://courses.cs.sfu.ca/ Late penalty is 10% per calendar day (each 0 to 24 hour period past due).

More information

CPSC 217 Assignment 4

CPSC 217 Assignment 4 CPSC 217 Assignment 4 Due: Friday December 8, 2017 at 11:55pm Weight: 7% Sample Solution Length: Approximately 130 lines (No comments and no code for the A+ part) Individual Work: All assignments in this

More information

Lab 2 Population. Purpose. Assignment Lab 2 analyzes population growth of a town as well as compare the population growth of two towns.

Lab 2 Population. Purpose. Assignment Lab 2 analyzes population growth of a town as well as compare the population growth of two towns. Lab 2 Population Purpose To assess your ability to apply the knowledge and skills developed up though week 7. Emphasis will be placed on the following learning outcomes: 1. Decompose a problem into modularized

More information

King Abdulaziz University Faculty of Computing and Information Technology Computer Science Department

King Abdulaziz University Faculty of Computing and Information Technology Computer Science Department King Abdulaziz University Faculty of Computing and Information Technology Computer Science Department CPCS204, 2 nd Term 2014 Program 2: KAU Grade Book (Linked Lists) Assigned: Thursday, February 20 th,

More information

CS Homework 11 p. 1. CS Homework 11

CS Homework 11 p. 1. CS Homework 11 CS 111 - Homework 11 p. 1 Deadline 11:59 pm on Friday, December 12, 2014 How to submit Each time you would like to submit your work: CS 111 - Homework 11 IF they are not already on nrs-labs, then transfer/save

More information

Homework #2 Assembly Programming

Homework #2 Assembly Programming Homework #2 Assembly Programming Last updated: 2016-05-22 Due date: see course website Directions: For short-answer questions, submit your answers in PDF format as a file called -hw2.pdf. Word documents

More information

ECE15: Lab #4. Problem 1. University of California San Diego

ECE15: Lab #4. Problem 1. University of California San Diego University of California San Diego ECE15: Lab #4 This lab is a cumulative wrap-up assignment for the entire course. As such, it relates to the material covered in Lecture Units 1 5 and 7 9 in class. Here

More information

Outline. Announcements. Homework 2. Boolean expressions 10/12/2007. Announcements Homework 2 questions. Boolean expression

Outline. Announcements. Homework 2. Boolean expressions 10/12/2007. Announcements Homework 2 questions. Boolean expression Outline ECS 10 10/8 Announcements Homework 2 questions Boolean expressions If/else statements State variables and avoiding sys.exit( ) Example: Coin flipping (if time permits) Announcements Professor Amenta

More information

Lab 3: Call to Order CSCI 2101 Fall 2018

Lab 3: Call to Order CSCI 2101 Fall 2018 Due: Monday, October 15, 11:59 pm Collaboration Policy: Level 1 Group Policy: Pair-Optional Lab 3: Call to Order CSCI 2101 Fall 2018 This week s lab will explore sorting, lists, and basic data analysis.

More information

Inheritance, and Polymorphism.

Inheritance, and Polymorphism. Inheritance and Polymorphism by Yukong Zhang Object-oriented programming languages are the most widely used modern programming languages. They model programming based on objects which are very close to

More information

EECE.2160: ECE Application Programming Spring 2018 Programming Assignment #6: Using Arrays to Count Letters in Text Due Wednesday, 4/4/18, 11:59:59 PM

EECE.2160: ECE Application Programming Spring 2018 Programming Assignment #6: Using Arrays to Count Letters in Text Due Wednesday, 4/4/18, 11:59:59 PM Spring 2018 Programming Assignment #6: Using Arrays to Count Letters in Text Due Wednesday, 4/4/18, 11:59:59 PM 1. Introduction In this program, you will practice working with arrays. Your program will

More information

CMSC 201 Spring 2018 Project 3 Minesweeper

CMSC 201 Spring 2018 Project 3 Minesweeper CMSC 201 Spring 2018 Project 3 Minesweeper Assignment: Project 3 Minesweeper Due Date: Design Document: Friday, May 4th, 2018 by 8:59:59 PM Project: Friday, May 11th, 2018 by 8:59:59 PM Value: 80 points

More information

D - Tic Tac Toe. Let's use our 9 sparkles to build a tic tac toe game! 2017 courses.techcamp.org.uk/ Page 1 of 9

D - Tic Tac Toe. Let's use our 9 sparkles to build a tic tac toe game! 2017 courses.techcamp.org.uk/ Page 1 of 9 D - Tic Tac Toe Let's use our 9 sparkles to build a tic tac toe game! 2017 courses.techcamp.org.uk/ Page 1 of 9 INTRODUCTION Let's use our 9 sparkles to build a tic tac toe game! Step 1 Assemble the Robot

More information

King Abdulaziz University Faculty of Computing and Information Technology Computer Science Department

King Abdulaziz University Faculty of Computing and Information Technology Computer Science Department King Abdulaziz University Faculty of Computing and Information Technology Computer Science Department CPCS204, 3 rd Term 2014 (Summer) Program 2: FCIT Mobily (Linked Lists) Assigned: Wednesday, June 18

More information

Programming Standards: You must conform to good programming/documentation standards. Some specifics:

Programming Standards: You must conform to good programming/documentation standards. Some specifics: CS3114 (Spring 2011) PROGRAMMING ASSIGNMENT #3 Due Thursday, April 7 @ 11:00 PM for 100 points Early bonus date: Wednesday, April 6 @ 11:00 PM for a 10 point bonus Initial Schedule due Thursday, March

More information

CS3114 (Fall 2013) PROGRAMMING ASSIGNMENT #2 Due Tuesday, October 11:00 PM for 100 points Due Monday, October 11:00 PM for 10 point bonus

CS3114 (Fall 2013) PROGRAMMING ASSIGNMENT #2 Due Tuesday, October 11:00 PM for 100 points Due Monday, October 11:00 PM for 10 point bonus CS3114 (Fall 2013) PROGRAMMING ASSIGNMENT #2 Due Tuesday, October 15 @ 11:00 PM for 100 points Due Monday, October 14 @ 11:00 PM for 10 point bonus Updated: 10/10/2013 Assignment: This project continues

More information

CSE 374 Programming Concepts & Tools. Hal Perkins Spring 2010

CSE 374 Programming Concepts & Tools. Hal Perkins Spring 2010 CSE 374 Programming Concepts & Tools Hal Perkins Spring 2010 Lecture 19 Introduction ti to C++ C++ C++ is an enormous language: g All of C Classes and objects (kind of like Java, some crucial differences)

More information

CSCI-1200 Data Structures Spring 2018 Exam 1 Solutions

CSCI-1200 Data Structures Spring 2018 Exam 1 Solutions CSCI-1200 Data Structures Spring 2018 Exam 1 Solutions 1 Parcel Delivery [ / 35] In the following problem you will finish the implementation of a program that is designed to keep track of several delivery

More information

C++ Inheritance and Encapsulation

C++ Inheritance and Encapsulation C++ Inheritance and Encapsulation Private and Protected members Inheritance Type Public Inheritance Private Inheritance Protected Inheritance Special method inheritance 1 Private Members Private members

More information

Part I: Written Problems

Part I: Written Problems CSci 4223 Homework 1 DUE: Friday, February 1, 11:59 pm Instructions. Your task is to answer three written problems, and to write eleven SML functions related to calendar dates, as well as test cases for

More information

CSCI 1301: Introduction to Computing and Programming Spring 2018 Project 3: Hangman 2.0 (A Word Guessing Game)

CSCI 1301: Introduction to Computing and Programming Spring 2018 Project 3: Hangman 2.0 (A Word Guessing Game) Introduction In this project, you are going to implement the word guessing game, Hangman 2.0. Your program is going to get a random word from an enumerated list (instructions below) and then let the user

More information

EECE.4810/EECE.5730: Operating Systems Spring 2018 Programming Project 3 Due 11:59 PM, Wednesday, 4/18/18 Monday, 4/30/18

EECE.4810/EECE.5730: Operating Systems Spring 2018 Programming Project 3 Due 11:59 PM, Wednesday, 4/18/18 Monday, 4/30/18 Spring 2018 Programming Project 3 Due 11:59 PM, Wednesday, 4/18/18 Monday, 4/30/18 1. Introduction This project uses simulation to explore the effectiveness of the different scheduling algorithms described

More information

OOP- 5 Stacks Individual Assignment 35 Points

OOP- 5 Stacks Individual Assignment 35 Points OOP-5-Stacks-HW.docx CSCI 2320 Initials P a g e 1 If this lab is an Individual assignment, you must do all coded programs on your own. You may ask others for help on the language syntax, but you must organize

More information

Question 1: knn classification [100 points]

Question 1: knn classification [100 points] CS 540: Introduction to Artificial Intelligence Homework Assignment # 8 Assigned: 11/13 Due: 11/20 before class Question 1: knn classification [100 points] For this problem, you will be building a k-nn

More information

Programming Assignment #4 Arrays and Pointers

Programming Assignment #4 Arrays and Pointers CS-2301, System Programming for Non-majors, B-term 2013 Project 4 (30 points) Assigned: Tuesday, November 19, 2013 Due: Tuesday, November 26, Noon Abstract Programming Assignment #4 Arrays and Pointers

More information

Tips from the experts: How to waste a lot of time on this assignment

Tips from the experts: How to waste a lot of time on this assignment Com S 227 Spring 2018 Assignment 1 100 points Due Date: Friday, September 14, 11:59 pm (midnight) Late deadline (25% penalty): Monday, September 17, 11:59 pm General information This assignment is to be

More information

Lab 1: Introduction to C, ASCII ART & the Linux Command Line

Lab 1: Introduction to C, ASCII ART & the Linux Command Line .i.-' `-. i..' `/ \' _`.,-../ o o \.' ` ( / _\ /_ \ ) \\\ (_.'.'"`.`._) /// \\`._(..: :..)_.'// \`. \.:-:. /.'/ `-i-->..

More information

Web API Lab. The next two deliverables you shall write yourself.

Web API Lab. The next two deliverables you shall write yourself. Web API Lab In this lab, you shall produce four deliverables in folder 07_webAPIs. The first two deliverables should be pretty much done for you in the sample code. 1. A server side Web API (named listusersapi.jsp)

More information

Homework 11 Program Setup (with some IMPORTANT NEW STEPS!)

Homework 11 Program Setup (with some IMPORTANT NEW STEPS!) Spring 2018 - CS 111 - Homework 11 p. 1 Deadline 11:59 pm on Friday, April 27, 2018 Purpose To practice with loops, arrays, and more! How to submit CS 111 - Homework 11 Submit your main.cpp (or it may

More information

CS2223: Algorithms D- Term, Homework I. Teams: To be done individually. Due date: 03/27/2015 (1:50 PM) Submission: Electronic submission only

CS2223: Algorithms D- Term, Homework I. Teams: To be done individually. Due date: 03/27/2015 (1:50 PM) Submission: Electronic submission only CS2223: Algorithms D- Term, 2015 Homework I Teams: To be done individually Due date: 03/27/2015 (1:50 PM) Submission: Electronic submission only 1 General Instructions Python Code vs. Pseudocode: Each

More information

CS 150 Lab 10 Functions and Random Numbers

CS 150 Lab 10 Functions and Random Numbers CS 150 Lab 10 Functions and Random Numbers The objective of today s lab is to implement functions and random numbers in a simple game. Be sure your output looks exactly like the specified output. Be sure

More information

Final Project Grading Criteria, CSCI 588, Fall 2001

Final Project Grading Criteria, CSCI 588, Fall 2001 Final Project Grading Criteria, CSCI 588, Fall 2001 Each team is required to hand out one hard copy for your final project on December 4, 2001. The date is firm. No delayed submission will be accepted.

More information

Computer Science II CSCI-142 Heading Home! Project 2

Computer Science II CSCI-142 Heading Home! Project 2 Computer Science II CSCI-142 Heading Home! Project 2 08/21/2018 The end of the semester is here... you are preparing to go home. You are going to turn in this project, the last homework, take the final,

More information

CS101 Homework 4: Social Network

CS101 Homework 4: Social Network CS101 Homework 4: Social Network Prof Tejada Program and report due: 11:59pm Wednesday, March 13 Design document due: 11:59pm Wednesday, March 6 1 Introduction For this assignment create user accounts

More information

KeePass Password Safe: Password Manager

KeePass Password Safe: Password Manager KeePass Password Safe: Password Manager The recommended from Information Services at the University of Regina password manager is KeePass Password Safe. This documents is designed to assist with the creation

More information

CSE/EEE 230 Computer Organization and Assembly Language

CSE/EEE 230 Computer Organization and Assembly Language 1 Instructions You may work in pairs with one partner on this assignment if you wish or you may work alone. If you work with a partner, only submit one file to Blackboard with both of your names in the

More information

Spring 2017 CMSC 140 Programming Project 7: Payroll

Spring 2017 CMSC 140 Programming Project 7: Payroll Spring 2017 CMSC 140 Programming Project 7: Payroll Concepts tested by the program: 1. Working with arrays 2. Using file operations 3. Using a selection sort to sort parallel arrays 4. Using a binary search

More information

CMSC 341 Hashing (Continued) Based on slides from previous iterations of this course

CMSC 341 Hashing (Continued) Based on slides from previous iterations of this course CMSC 341 Hashing (Continued) Based on slides from previous iterations of this course Today s Topics Review Uses and motivations of hash tables Major concerns with hash tables Properties Hash function Hash

More information

Deliverables. Problem Description

Deliverables. Problem Description Deliverables Programming Project: GridWorld Due dates: Part I: June 28 at the beginning of class (hardcopy) Part II: Jun 5 at the beginning of class (electronic submission) In this project you will design

More information

CSE 143: Computer Programming II Winter 2019 HW6: AnagramSolver (due Thursday, Feb 28, :30pm)

CSE 143: Computer Programming II Winter 2019 HW6: AnagramSolver (due Thursday, Feb 28, :30pm) CSE 143: Computer Programming II Winter 2019 HW6: AnagramSolver (due Thursday, Feb 28, 2019 11:30pm) This assignment focuses on recursive backtracking. Turn in the following files using the link on the

More information

CS 342 Software Design Spring 2018 Term Project Part II Development of Question, Answer, and Exam Classes

CS 342 Software Design Spring 2018 Term Project Part II Development of Question, Answer, and Exam Classes CS 342 Software Design Spring 2018 Term Project Part II Development of Question, Answer, and Exam Classes Due: Wednesday 21 February. Electronic copy due at 3:30 P.M. Optional paper copy may be handed

More information

CS Homework 10 p. 1. CS Homework 10

CS Homework 10 p. 1. CS Homework 10 CS 111 - Homework 10 p. 1 Deadline 11:59 pm on Friday, December 2, 2016 How to submit Each time you would like to submit your work: CS 111 - Homework 10 If your files are not already on nrs-labs, be sure

More information

PIC 10B Lecture 1 Winter 2014 Homework Assignment #1

PIC 10B Lecture 1 Winter 2014 Homework Assignment #1 PIC 10B Lecture 1 Winter 2014 Homework Assignment #1 Due Thursday, January 16, 2014 by 6:00pm. Objectives: 1. To define classes using C++ inheritance. 2. To use C++ polymorphism to make your code more

More information

Project 5 Handling Bit Arrays and Pointers in C

Project 5 Handling Bit Arrays and Pointers in C CS 255 Project 5 Handling Bit Arrays and Pointers in C Due: Thursday, Apr. 30 by 8:00am. No late submissions! Assignment: This homework is adapted from the CS450 Assignment #1 that Prof. Mandelberg uses

More information

These bit positions are represented by numerical values, as defined in list.h.

These bit positions are represented by numerical values, as defined in list.h. CS305 Programming Assignment #3: Lovely Linked Lists with Starter Code Out: Feb 19, 015. Due: Mar 3, 015 by 11:00 pm on the CS305 Moodle site. Total points: 100. approximately 0% of the total homework

More information

Project 1 for CMPS 181: Implementing a Paged File Manager

Project 1 for CMPS 181: Implementing a Paged File Manager Project 1 for CMPS 181: Implementing a Paged File Manager Deadline: Sunday, April 23, 2017, 11:59 pm, on Canvas. Introduction In project 1, you will implement a very simple paged file (PF) manager. It

More information

King Abdulaziz University Faculty of Computing and Information Technology Computer Science Department

King Abdulaziz University Faculty of Computing and Information Technology Computer Science Department King Abdulaziz University Faculty of Computing and Information Technology Computer Science Department CPCS204, 1 st Term 2014 Program 2: FCIT Baqalah Assigned: Thursday, September 26 th, 2013 Due: Wednesday,

More information

ASSIGNMENT 5 Objects, Files, and a Music Player

ASSIGNMENT 5 Objects, Files, and a Music Player ASSIGNMENT 5 Objects, Files, and a Music Player COMP-202A, Fall 2009, All Sections Due: Thursday, December 3, 2009 (23:55) You MUST do this assignment individually and, unless otherwise specified, you

More information

Practice PT: Sample Write Up - Improved Digital Assistant

Practice PT: Sample Write Up - Improved Digital Assistant Practice PT: Sample Write Up - Improved Digital Assistant 1. Video Link: https://drive.google.com/open?id=0b78n8p4zhhfgrffueglkm2zey2m 2a. My project, which extends a project started in class, is a JavaScript

More information

CSCI 102L - Data Structures Midterm Exam #1 Fall 2011

CSCI 102L - Data Structures Midterm Exam #1 Fall 2011 Print Your Name: Page 1 of 8 Signature: Aludra Loginname: CSCI 102L - Data Structures Midterm Exam #1 Fall 2011 (10:00am - 11:12am, Wednesday, October 5) Instructor: Bill Cheng Problems Problem #1 (24

More information

CS 211 Programming Practicum Fall 2018

CS 211 Programming Practicum Fall 2018 Due: Wednesday, 11/7/18 at 11:59 pm Infix Expression Evaluator Programming Project 5 For this lab, write a C++ program that will evaluate an infix expression. The algorithm REQUIRED for this program will

More information

Lab 4 Due April 18 th

Lab 4 Due April 18 th Lab 4 Due April 18 th (100 pts) You may work with a partner if you want. Turn in one version with 2 names on it. Do not forget your partner s name. Or work alone. Your choice. Problem 1 (10 pts): Create

More information

Lab 3: Call to Order CSCI 2101 Fall 2017

Lab 3: Call to Order CSCI 2101 Fall 2017 Lab 3: Call to Order CSCI 2101 Fall 2017 Due: Part 1: Tuesday, Oct 3, 11:59 pm, Part 2: Wednesday, Oct 11, 11:59 pm Collaboration Policy: Level 1 Group Policy: Part 1: Individual, Part 2: Pair-Optional

More information

be able to read, understand, and modify a program written by someone else utilize the Java Swing classes to implement a GUI

be able to read, understand, and modify a program written by someone else utilize the Java Swing classes to implement a GUI Homework 5, CS 2119 B-term 2015 Completing the GUI for a Student Database Due: Thursday, December 10 at 5pm Outcomes After successfully completing this assignment, you will be able to read, understand,

More information