Programming Assignment 2 ( 100 Points ) Due: Thursday, October 12 by 11:59pm

Size: px
Start display at page:

Download "Programming Assignment 2 ( 100 Points ) Due: Thursday, October 12 by 11:59pm"

Transcription

1 Programming Assignment 2 ( 100 Points ) Due: Thursday, October 12 by 11:59pm PA2 is a two part / two program assignment. The first part involves creating a graphical user interface (GUI) which responds to mouse clicks and mouse drags to create and manipulate a Mickey silhouette, as seen on the right. The second part involves filling in missing code parts and comments of a program simulator to test a classic brain teaser probability puzzle. README ( 10 points ) Starting with this assignment, every assignment will require a README file to be turned in along with whichever programs the PA requires. You are required to provide a text file named README, NOT Readme.txt, README.pdf, or README.docx, with your assignment in your pa2 directory. There should be no file extension after the file name README. How would you create this file? type vim README Your README should include the following sections: Program Description : Write this part of your README as if it was intended for someone who is computer challenged (like a great grandmother). Do not assume your reader is a computer science major. The more detailed the explanation, the more points you will receive. In future PAs we will simply ask you to explain how your programs work, what types of input they take and what types of output they have. However, for this PA, simply explain the specific topics mentioned in the following paragraph. Explain what fun things the user can do in the program DraggingMickey (and EC_DraggingMickey if you did the extra credit). Explain what the PA2Simulator program does if no command line arguments are given, if the user does not enter a valid integer for the number of simulations, if the user enters a negative integer value for the number of simulations, if the user enters a negative integer value for the random seed, approximately how many simulations are needed to have the stats that are printed out stabilize (not change as you add, say 1000 more simulations). Short Response : Answer the following questions: Note: Please cite any sources used for any of the short response answers. You can simply write a URL. Also, it is not necessary to re-write the questions in the README, but you can if you would like to. 1. Why is it considered an integrity violation if a student submits code copied from someone/somewhere else? 2. What is the Linux command to rename a file? What is the command to copy a file? 3. What are three ways to enter insert mode in vim? 4. What is a method? 5. What happens when you type ":split" in command mode in vim? 6. Imagine that you re using a terminal. When you type ls, the only files listed are Meow.java and Dog.java. You realize you want to edit something inside Dog.java, so you need to open the file. You type vim Dog.j. What key can you press so that the filename is completely written out and reads vim Dog.java? (hint:

2 STYLE ( 20 points ) From now on, we ll start being more critical of the style used in each programming assignment. Each bullet point statement is worth some amount of the 20 points so please carefully read and implement each of them. Write reasonable comments to make your code clear and readable. This is so that if you go back to your code, in a couple months, it ll still be understandable to you. You don t need to comment every line, but you should comment sections of code that you struggled with writing so that you understand your logic later. Also, you should comment sections of code that are not immediately obvious as to their purpose. Example: Say you increment a variable (oddcount++). A poor comment would say incrementing variable. A better comment would explain the purpose of the increment so it could be keeping track of how many odd numbers have been encountered. Also, you can either put the comments above or on the line you re referring to. Just make sure to keep the location consistent and don t switch between writing it above/in-line once you ve picked a location. Some examples include: oddcount++; // commenting commenting commenting or // commenting commenting commenting oddcount++; or /* commenting commenting commenting */ oddcount++; or /* * commenting * commenting * commenting */ oddcount++; Write class headers and method/constructor headers to describe the purpose of your program and methods. Also, each file should have a file header at the top of the file (including your README). In PA1, we endorsed a different type of method/class header. For PA2 and all the following assignments, we want to see only a Javadoc style of commenting for the class and method/constructor headers. Note these start with /** See below for examples on those. (Note: coloring may differ depending on what color scheme your vim has): Example file header comment (at the very top of your source file): /* * Name: Jane-Joe Student * Login: cs11fxxx <<< --- Use your cs11f course-specific account name * Date: Month Day, Year of last edit date * File: Name of this file, for example: DraggingMickey.java * Sources of Help:... (for example: names of people, books, websites, etc.) * * Write a program description here. Keep this short but generally explain what * your program does */

3 Example class header comment (immediately above the main public class statement): /** * Description of the class. Keep this to one to two lines. */ Example method/constructor header comment (immediately above each method or constructor definition): /** * Description of the method or constructor, including functionality * param1 State what this parameter represents. param2 State what this parameter represents. Specify what the return value represents. */ If you have multiple parameters, then use tags. If there are no parameters, then there should be tag. If there is no return value, then there should be tag. Use reasonable variable names. If you have a variable, don t call it variable, var, thing, or anything generic. Also, avoid one letter variable names as they don t describe variables well either. The better your variable name, the less commenting you ll have to do to explain it and also you won t confuse yourself later on. Use of blank lines around logical chunks of code makes your code much easier to read and debug. For instance, put some blank lines between methods. Also, a blank line between compound statements/blocks helps too. It s up to you to decide how many blank spaces to use but remember too many is excessive (example: 6 lines between methods) and too few makes the code look like a large chunk of characters and it becomes hard to read. Also, as you can see in the example below, comments should factor into spacing as well. Essentially, make sure your code is readable and doesn t look like a wall of text. example if (meow) { GOOD: /* commenting commenting commenting commenting * commenting commenting commenting commenting * commenting commenting commenting commenting * everytime meow is true, it increments */ count++; // commenting bunnies--; } else { } count--;

4 BAD: if(meow){ //commenting commenting commenting commenting //commenting commenting commenting commenting //commenting commenting commenting commenting //everytime meow is true, it increments count++; //commenting bunnies--; }else{count--;} Keep all lines less than 80 characters (Note: this applies to README too). Use 2 spaces for each level of indentation. What is a level? Every time you have to go to the right. The if/else code above shows this well. The if (meow) { line is one level of indentation. The next level of indentation is the comment //commenting commenting commenting commenting. As you can see, the code is using 2 spaces per each level of indentation. Also, make sure each level of indentation lines up evenly. As you can see in good if/else examples above, the closing bracket for the if statement lines up directly underneath the i in the if statement. The same can be seen for the else statement where the closing bracket } also lines up. Note: You can put the opening curly bracket { either on the same line as the if statement (as shown in the example code above), or on it s own separate line immediately after the if statement directly underneath the i in if. Either is good; just keep it consistent. Every time you open a new block of code (use a '{'), indent a level. Go back to the previous level of indenting when you close the block (use a '}'). See good code example above. Do not use magic numbers or hard-coded numbers other than 0, 1, and -1. Use constants in place of numbers. Piazza post for more detail (thanks Jesse Q) [ CORRECTNESS ( 70 points ) Setting up your pa2 directory: You will need to create a new directory named pa2 in your cs11f home directory on the workstations or ieng6.ucsd.edu (file server used by the lab workstations). The '$' character represents the command line prompt. Type the commands that appear after the command line prompt. $ cd $ mkdir pa2 The first command (cd) changes your current directory to your home directory. cd stands for change directory. By default, if you do not specify a directory to change to the command will put you in your home directory. The second command (mkdir pa2) makes a new directory named pa2. This new directory will be in your home directory since you did a cd beforehand.

5 Now type $ cd pa2 This will change your current working directory to the new pa2 directory you just created. All files associated with this programming assignment must be placed in this directory. And in general, you should do all your work on this programming assignment in this pa2 directory. Now copy over required jar files from the public directory (note the. as the last argument) $ cp ~/../public/objectdraw.jar. $ cp ~/../public/acme.jar. ~ is your home directory... is the relative parent directory.. is the relative current directory. So this path starts at your home directory (~) no matter what directory you are currently in, then moves up one directory (..), then down into the class public directory (public), and accesses the named file (for example, Acme.jar). That file is copied (the cp command) to your current working directory (.). To change your current working directory back to your home directory, you can type cd as you did before. Program 1 - DraggingMickey.java Write a Java application that does the following (use the textbook examples as guides): When the application first starts up, display instructions on two lines using Text objects. See the screenshot below for exact wording of the instructions. On a mouse click, hide the instructions, and if there is no Mickey silhouette already drawn then draw a Mickey silhouette with the face of the Mickey centered at the point of the mouse click. The silhouette is made up of 3 FilledOvals - a left ear, a right ear, and a face (in that order). See the screenshots and constants defined below. Only one Mickey figure should be drawn no matter how many mouse clicks occur. On a mouse press, if the Mickey silhouette has already been drawn, check if the point of the mouse press is anywhere in the silhouette (in other words, you are grabbing the Mickey figure). You can grab either ear or face. Of course, on mouse release you are no longer grabbing it. On a mouse drag, if the Mickey figure has been grabbed (mouse press is inside the figure s boundaries), drag the Mickey figure around with the mouse drag. You will need to move all 3 parts of the figure together. See the examples in the textbook. The figure should continue to look like a Mickey silhouette during and after the drag. Also, all 3 parts of the Mickey should change color while Mickey is being dragged - the left ear to RED (red), the right ear to GREEN (green), and the face to BLUE (blue). Once the mouse has been released, then Mickey should revert back to being black. On a mouse exit (when the mouse pointer exits the canvas), if the Mickey figure had been drawn, remove the entire figure from the canvas and reset the logic you are using to keep track of whether a Mickey figure has been drawn or not (you can do this in many ways). On a mouse enter (when the mouse pointer (re)enters the canvas), show the instructions.

6 Many of the checks in the event handlers above are to prevent blindly trying to remove non-existing objects from the canvas, displaying more than one figure with multiple mouse clicks, checking if you are trying to grab a non-existing figure, etc. Without these checks you will likely get exceptions thrown in the terminal window. No exceptions should be thrown! To get you started here are some constants you should use: private static final int INSTR1_X = 50; private static final int INSTR1_Y = 50; private static final int INSTR2_X = INSTR1_X; private static final int INSTR2_Y = INSTR1_Y + 20; private static final int FACE_RADIUS = 50; private static final int EAR_RADIUS = 30; private static final int EAR_OFFSET = 50; // Center of each ear is this offset up and over // (x and y) from center of face. private static final String INSTR1_TEXT = "Click to display a Mickey silhouette centered at the mouse click."; private static final String INSTR2_TEXT = "Mouse press in any part of the image and drag to move image around."; Screenshots of example execution of DraggingMickey: At start-up. On mouse click (head centered at mouse click).

7 Dragging the figure around. On mouse exit. On mouse (re)enter. On mouse click.

8 Ideas for How to Get Started Read the online documentation for the Text and FilledOval objects from the objectdraw library Create the DraggingMickey.java file and read Chapters 4-6 in the textbook public class DraggingMickey extends WindowController Making DraggingMickey into an Application This is missing from the textbook examples. Don t forget to add the following code to DraggingMickey.java. Since we want to run this program as an application which uses objectdraw graphics and uses the WindowController class, we need to add a main() that runs this program in an Acme.MainFrame. public static void main( String[] args ) { new Acme.MainFrame( new DraggingMickey(), args, FRAME_WIDTH, FRAME_HEIGHT ); } This code allows DraggingMickey to run as an application. Define static final constants for the initial number of pixels width and height for the frame/window and set both to 750. Compiling: To compile your code, use the following: $ javac -cp./acme.jar:./objectdraw.jar:. DraggingMickey.java Running To run your program, use the following: $ java -cp./acme.jar:./objectdraw.jar:. DraggingMickey Program 2 - PA2Simulator.java A classic brain teaser probability puzzle is set up like this: Suppose you are on a game show and you are given the choice of three doors (door1, door2, door3). Behind one door is a big prize (like a car). Behind the other two doors is a not so good prize (like a single peanut). You pick a door (say, door1). The game show host, who knows what is behind all the doors, opens one of the other doors you did not pick (say, door2) which he knows does not have the big prize and shows it has a peanut. The host then asks you, "Do you want to switch your pick to door3?" (door3 in this example or more generally asks you if you want to switch to the other door you did not initially pick and the host did not open to reveal a peanut). Now the question we want to answer is: Is it to your advantage to always switch to this other or not? Lots of people (even very smart people) will say it does not matter if you switch or not because you have a change at this point. But others say it does matter and that you should always switch. So who is right? We wrote a program to simulate this problem to determine if it is better to always switch or not. But we left out lots of code for you to fill in to complete this program. You job is to correctly fill in the missing pieces of code by reading the comments and existing code. You also need to fill in the File, Class, and Method header comments using Javadoc style comments. No program is complete without comments!

9 Copy the skeleton code to your pa2 directory. $ cp ~/../public/pa2simulator.java ~/pa2 $ cd ~/pa2 Read through the partial program provided. Wherever there is a /* TODO */ comment, you need to complete that missing piece of code or missing Javadoc style comment. In the Discussion Sections, we will go over a worksheet that will help you become familiar with many new concepts this program uses and areas you will need to complete. Also see the online Java documentation for the various classes and methods you will need to use to complete this program. Learning to be self-reliant and use available official documentation like the Java library documentation is an important step. Read the comments in the program! Here are some example runs of what your completed program should look like. Your correctly completed program should output the same number of Wins and Losses with the default and specified random seed values and number of simulations in the examples below. To compile: $ javac PA2Simulator.java Run program with no command line arguments to display usage message: $ java PA2Simulator Usage: java PA2Simulator num_of_simulations [random_seed] num_of_simulations must be an integer greater than 0 optional random_seed must be an integer Run program with num_of_simulations argument not greater than 0: $ java PA2Simulator -1 Usage: java PA2Simulator num_of_simulations [random_seed] num_of_simulations must be an integer greater than 0 optional random_seed must be an integer Run program with num_of_simulations too large for a valid integer ( thru ): $ java PA2Simulator Usage: java PA2Simulator num_of_simulations [random_seed] num_of_simulations must be an integer greater than 0 optional random_seed must be an integer Run program with valid num_of_simulations, no optional random seed, answering y to always switch doors: $ java PA2Simulator 12 Do you always want to switch doors in this simulation? (y/n): y Wins: 7 (58.33%) Losses: 5 (41.67%) Run program with valid num_of_simulations, no optional random seed, answering n to switch doors prompt: $ java PA2Simulator 12 Do you always want to switch doors in this simulation? (y/n): n Wins: 5 (41.67%) Losses: 7 (58.33%)

10 Run program with valid num_of_simulations, no optional random seed, answering xyz to switch doors prompt: $ java PA2Simulator 12 Do you always want to switch doors in this simulation? (y/n): xyz You did not answer y or n, so assuming n Wins: 5 (41.67%) Losses: 7 (58.33%) Run program with valid num_of_simulations, no optional random seed, hitting <Enter> at switch doors prompt: $ java PA2Simulator 12 Do you always want to switch doors in this simulation? (y/n): You did not answer y or n, so assuming n Wins: 5 (41.67%) Losses: 7 (58.33%) Run program with valid num_of_simulations and a random seed that is not a valid integer: $ java PA2Simulator abc Usage: java PA2Simulator num_of_simulations [random_seed] num_of_simulations must be an integer greater than 0 optional random_seed must be an integer Run program with valid num_of_simulations and a random seed that is a valid integer: $ java PA2Simulator Do you always want to switch doors in this simulation? (y/n): y Wins: 6 (50.00%) Losses: 6 (50.00%) Run program with larger number of simulations: $ java PA2Simulator Do you always want to switch doors in this simulation? (y/n): y Wins: (66.35%) Losses: (33.65%) Run program with same number of simulations but a different random seed: $ java PA2Simulator Do you always want to switch doors in this simulation? (y/n): y Wins: (66.72%) Losses: (33.28%) $ java PA2Simulator Do you always want to switch doors in this simulation? (y/n): n Wins: (33.28%) Losses: (66.72%) If you cannot get your PA2Simulator.java to compile before the turnin deadline, move your non-compiling PA2Simulator.java file out of your pa2 directory. The turnin script will fail if it cannot successfully compile all.java source files in your pa2 directory.

11 Extra Credit (5 point - 5%) Enhance your DraggingMickey program so the user can specify a pixel threshold on the command line such that when the Mickey figure is being dragged around the canvas, the colors of the Mickey figure toggles back and forth between RGB and CYM every pixel threshold number of pixels (essentially the number of times onmousedrag() is called in response to dragging Mickey). It starts off being dragged with the left ear = Red, right ear = Green, face = Blue (RGB). Then after dragging the Mickey figure this pixel threshold number of pixels it changes colors to left ear = Cyan, right ear = Magenta, face = Yellow (CMY). After being dragged another pixel threshold number of pixels it changes back to RGB, and keeps toggling between these color patterns until the mouse button is released and it changes back to all Black resetting the number of pixels currently being kept track of (number of pixels moved while dragging). If the user does not specify a pixel threshold on the command line, default this value to 10 pixels. Copy the working DraggingMickey.java to EC_DraggingMickey.java $ cp DraggingMickey.java EC_DraggingMickey.java Edit this new EC_DraggingMickey.java to change all the instances of DraggingMickey to EC_DraggingMickey. Look at PA2Simulator.java to see how to check if there is a command line argument and how to convert it to an int. Make sure the value entered by the user on the command line is a valid int and is greater than 0. Examples: Pixel threshold of any value not greater than 0 will produce an error message: $ java -cp./acme.jar:./objectdraw.jar:. EC_DraggingMickey 0 Pixel threshold must be greater than 0 Invalid pixel threshold command line arguments: $ java -cp./acme.jar:./objectdraw.jar:. EC_DraggingMickey 123abc Bad pixel threshold command line argument $ java -cp./acme.jar:./objectdraw.jar:. EC_DraggingMickey Bad pixel threshold command line argument Pixel threshold defaults to 10 pixels with no extra command line argument (drag Mickey slowly): $ java -cp./acme.jar:./objectdraw.jar:. EC_DraggingMickey Pixel threshold is 25 pixels - toggles between RGB and CMY every 25 pixels (drag Mickey slowly): $ java -cp./acme.jar:./objectdraw.jar:. EC_DraggingMickey 25 It will help if you drag Mickey around slowly vs. rapidly so the mouse drag event handling mechanism can keep up. Some example screen shots from the Extra Credit version:

12 After first click Dragging Mickey first starts off as RGB After dragging pixel threshold number After dragging pixel threshold number of pixels toggle to CMY (and repeat) of pixels toggle to RGB After After After mouse mouse mouse release exit enter

13 Turnin Always recompile and run your program right before turning it in, just in case you commented out some code by mistake. The only files that should be in your pa2 directory are those specific to this assignment - no test files or extra files not associated with PA2. To turn-in your code, navigate to your home directory and use the following command: $ cse11turnin pa2 You may turn in your programming assignment as many times as you like. Each turnin overwrites the previous turnin. The last submission you turn in before the deadline is the one that we will collect and grade. If you cannot get your PA2Simulator.java to compile before the turnin deadline, move your non-compiling PA2Simulator.java file out of your pa2 directory. The turnin script will fail if it cannot successfully compile all.java source files in your pa2 directory. Verify To verify a previously turned in assignment: $ cse11verify pa2 If you are unsure if your program has been turned in, use the verify command. We will not take any late files you forgot to turn in. Verify will help you check which files you have successfully submitted. It is your responsibility to make sure you properly turned in your assignment. Also, make sure that you don t misspell any file names. Files to be collected for grading: DraggingMickey.java PA2Simulator.java README EC_DraggingMickey.java (if you do not get this to compile before the deadline, move it out of your pa2 dir) (if you did the extra credit) NO LATE ASSIGNMENTS ACCEPTED. DO NOT US YOUR ASSIGNMENT! Start Early and Start Often

Programming Assignment 2 ( 100 Points )

Programming Assignment 2 ( 100 Points ) Programming Assignment 2 ( 100 Points ) Due: Thursday, October 16 by 11:59pm This assignment has two programs: one a Java application that reads user input from the command line (TwoLargest) and one a

More information

Programming Assignment 2 (PA2) - DraggingEmoji & ShortLongWords

Programming Assignment 2 (PA2) - DraggingEmoji & ShortLongWords Programming Assignment 2 (PA2) - DraggingEmoji & ShortLongWords Due Date: Wednesday, October 10 @ 11:59 pm Assignment Overview Grading Gathering Starter Files Program 1: DraggingEmoji Program 2: ShortLongWords

More information

Programming Assignment 3 ( 100 Points ) START EARLY!

Programming Assignment 3 ( 100 Points ) START EARLY! Programming Assignment 3 ( 100 Points ) Due: 11:59pm Thursday, October 19 START EARLY! This programming assignment has two programs: 1) a Java application (HourGlass) that displays an hourglass shape on

More information

Programming Assignment 4 ( 100 Points )

Programming Assignment 4 ( 100 Points ) Programming Assignment 4 ( 100 Points ) Due: 11:59pm Thursday, October 26 START EARLY!! In PA4 you will continue exploring the graphical user interface (GUI) and object oriented programming. You will be

More information

Programming Assignment 1: CS11TurtleGraphics

Programming Assignment 1: CS11TurtleGraphics Programming Assignment 1: CS11TurtleGraphics Due: 11:59pm, Thursday, October 5 Overview You will use simple turtle graphics to create a three-line drawing consisting of the following text, where XXX should

More information

Programming Assignment 8 ( 100 Points )

Programming Assignment 8 ( 100 Points ) Programming Assignment 8 ( 100 Points ) Due: 11:59pm Wednesday, November 22 Start early Start often! README ( 10 points ) You are required to provide a text file named README, NOT Readme.txt, README.pdf,

More information

Programming Assignment 5 (100 Points) START EARLY!

Programming Assignment 5 (100 Points) START EARLY! Programming Assignment 5 (100 Points) Due: 11:59PM Thursday, November 2 START EARLY! Mining is arduous and dangerous work. Miners need to be taught how to mine minerals in the most efficient manner possible.

More information

Programming Assignment 7 (100. Points)

Programming Assignment 7 (100. Points) Programming Assignment 7 (100 Points) Due: 11:59pm Thursday, November 16 In this PA, we will be learning about recursion and some of Rick s Vegas wisdom. README ( 10 points ) You are required to provide

More information

CSE 11 Style Guidelines

CSE 11 Style Guidelines CSE 11 Style Guidelines These style guidelines are based off of Google s Java Style Guide and Oracle s Javadoc Guide. Overview: Your style will be graded on the following items: File Headers Class Headers

More information

CS Problem Solving and Object-Oriented Programming

CS Problem Solving and Object-Oriented Programming CS 101 - Problem Solving and Object-Oriented Programming Lab 5 - Draw a Penguin Due: October 28/29 Pre-lab Preparation Before coming to lab, you are expected to have: Read Bruce chapters 1-3 Introduction

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

Fall 2013 Program/Homework Assignment #2 (100 points) -(Corrected Version)

Fall 2013 Program/Homework Assignment #2 (100 points) -(Corrected Version) CSE 11 START EARLY! Fall 2013 Program/Homework Assignment #2 (100 points) -(Corrected Version) Due: 11 October 2013 at 11pm (2300) Book Exercises Cover Chapters: 3-4 This is a combination of written responses

More information

CMPSC 111 Introduction to Computer Science I Fall 2016 Lab 8 Assigned: October 26, 2016 Due: November 2, 2016 by 2:30pm

CMPSC 111 Introduction to Computer Science I Fall 2016 Lab 8 Assigned: October 26, 2016 Due: November 2, 2016 by 2:30pm 1 CMPSC 111 Introduction to Computer Science I Fall 2016 Lab 8 Assigned: October 26, 2016 Due: November 2, 2016 by 2:30pm Objectives To enhance your experience with designing and implementing your own

More information

This is a combination of a programming assignment and ungraded exercises

This is a combination of a programming assignment and ungraded exercises CSE 11 Winter 2017 Programming Assignment #1 Covers Chapters: ZY 1-3 START EARLY! 100 Pts Due: 25 JAN 2017 at 11:59pm (2359) This is a combination of a programming assignment and ungraded exercises Exercises

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

CS/IT 114 Introduction to Java, Part 1 FALL 2016 CLASS 2: SEP. 8TH INSTRUCTOR: JIAYIN WANG

CS/IT 114 Introduction to Java, Part 1 FALL 2016 CLASS 2: SEP. 8TH INSTRUCTOR: JIAYIN WANG CS/IT 114 Introduction to Java, Part 1 FALL 2016 CLASS 2: SEP. 8TH INSTRUCTOR: JIAYIN WANG 1 Notice Class Website http://www.cs.umb.edu/~jane/cs114/ Reading Assignment Chapter 1: Introduction to Java Programming

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

Lab 1 Introduction to UNIX and C

Lab 1 Introduction to UNIX and C Name: Lab 1 Introduction to UNIX and C This first lab is meant to be an introduction to computer environments we will be using this term. You must have a Pitt username to complete this lab. NOTE: Text

More information

Adobe Illustrator. Quick Start Guide

Adobe Illustrator. Quick Start Guide Adobe Illustrator Quick Start Guide 1 In this guide we will cover the basics of setting up an Illustrator file for use with the laser cutter in the InnovationStudio. We will also cover the creation of

More information

Topic Notes: Java and Objectdraw Basics

Topic Notes: Java and Objectdraw Basics Computer Science 120 Introduction to Programming Siena College Spring 2011 Topic Notes: Java and Objectdraw Basics Event-Driven Programming in Java A program expresses an algorithm in a form understandable

More information

CS125 : Introduction to Computer Science. Lecture Notes #4 Type Checking, Input/Output, and Programming Style

CS125 : Introduction to Computer Science. Lecture Notes #4 Type Checking, Input/Output, and Programming Style CS125 : Introduction to Computer Science Lecture Notes #4 Type Checking, Input/Output, and Programming Style c 2005, 2004, 2002, 2001, 2000 Jason Zych 1 Lecture 4 : Type Checking, Input/Output, and Programming

More information

CS/IT 114 Introduction to Java, Part 1 FALL 2016 CLASS 3: SEP. 13TH INSTRUCTOR: JIAYIN WANG

CS/IT 114 Introduction to Java, Part 1 FALL 2016 CLASS 3: SEP. 13TH INSTRUCTOR: JIAYIN WANG CS/IT 114 Introduction to Java, Part 1 FALL 2016 CLASS 3: SEP. 13TH INSTRUCTOR: JIAYIN WANG 1 Notice Reading Assignment Chapter 1: Introduction to Java Programming Homework 1 It is due this coming Sunday

More information

CS 051 Homework Laboratory #2

CS 051 Homework Laboratory #2 CS 051 Homework Laboratory #2 Dirty Laundry Objective: To gain experience using conditionals. The Scenario. One thing many students have to figure out for the first time when they come to college is how

More information

1 Getting started with Processing

1 Getting started with Processing cis3.5, spring 2009, lab II.1 / prof sklar. 1 Getting started with Processing Processing is a sketch programming tool designed for use by non-technical people (e.g., artists, designers, musicians). For

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

ENCM 339 Fall 2017: Editing and Running Programs in the Lab

ENCM 339 Fall 2017: Editing and Running Programs in the Lab page 1 of 8 ENCM 339 Fall 2017: Editing and Running Programs in the Lab Steve Norman Department of Electrical & Computer Engineering University of Calgary September 2017 Introduction This document is a

More information

Programming Assignment Multi-Threading and Debugging 2

Programming Assignment Multi-Threading and Debugging 2 Programming Assignment Multi-Threading and Debugging 2 Due Date: Friday, June 1 @ 11:59 pm PAMT2 Assignment Overview The purpose of this mini-assignment is to continue your introduction to parallel programming

More information

Before submitting the file project4.py, check carefully that the header above is correctly completed:

Before submitting the file project4.py, check carefully that the header above is correctly completed: 1 of 7 8/26/2013 12:43 PM Due date: November 7th, 23:59PM This is a team project. The project is worth 100 points. All the team members will get an equal grade. ONLY the team leader must turn-in the project.

More information

The print queue was too long. The print queue is always too long shortly before assignments are due. Print your documentation

The print queue was too long. The print queue is always too long shortly before assignments are due. Print your documentation Chapter 1 CS488/688 F17 Assignment Format I take off marks for anything... A CS488 TA Assignments are due at the beginning of lecture on the due date specified. More precisely, all the files in your assignment

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

CIS 121 Data Structures and Algorithms with Java Spring 2018

CIS 121 Data Structures and Algorithms with Java Spring 2018 CIS 121 Data Structures and Algorithms with Java Spring 2018 Homework 2 Thursday, January 18 Due Monday, January 29 by 11:59 PM 7 Required Problems (85 points), and Style and Tests (15 points) DO NOT modify

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

You should see something like this, called the prompt :

You should see something like this, called the prompt : CSE 1030 Lab 1 Basic Use of the Command Line PLEASE NOTE this lab will not be graded and does not count towards your final grade. However, all of these techniques are considered testable in a labtest.

More information

Com S 227 Spring 2018 Assignment points Due Date: Thursday, September 27, 11:59 pm (midnight) "Late" deadline: Friday, September 28, 11:59 pm

Com S 227 Spring 2018 Assignment points Due Date: Thursday, September 27, 11:59 pm (midnight) Late deadline: Friday, September 28, 11:59 pm Com S 227 Spring 2018 Assignment 2 200 points Due Date: Thursday, September 27, 11:59 pm (midnight) "Late" deadline: Friday, September 28, 11:59 pm (Remember that Exam 1 is MONDAY, October 1.) General

More information

Assignment #1: /Survey and Karel the Robot Karel problems due: 1:30pm on Friday, October 7th

Assignment #1:  /Survey and Karel the Robot Karel problems due: 1:30pm on Friday, October 7th Mehran Sahami Handout #7 CS 06A September 8, 06 Assignment #: Email/Survey and Karel the Robot Karel problems due: :0pm on Friday, October 7th Email and online survey due: :9pm on Sunday, October 9th Part

More information

Mehran Sahami Handout #7 CS 106A September 24, 2014

Mehran Sahami Handout #7 CS 106A September 24, 2014 Mehran Sahami Handout #7 CS 06A September, 0 Assignment #: Email/Survey and Karel the Robot Karel problems due: :pm on Friday, October rd Email and online survey due: :9pm on Sunday, October th Part I

More information

John W. Jacobs Technology Center 450 Exton Square Parkway Exton, PA Introduction to

John W. Jacobs Technology Center 450 Exton Square Parkway Exton, PA Introduction to John W. Jacobs Technology Center 450 Exton Square Parkway Exton, PA 19341 610.280.2666 ccljtc@ccls.org Introduction to Microsoft Access 2007 Introduction to Microsoft Access What is Microsoft Access? Access

More information

CS Programming Exercise:

CS Programming Exercise: CS Programming Exercise: An Introduction to Java and the ObjectDraw Library Objective: To demonstrate the use of objectdraw graphics primitives and Java programming tools This lab will introduce you to

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 80 points Due Date: Friday, February 2, 11:59 pm (midnight) Late deadline (25% penalty): Monday, February 5, 11:59 pm General information This assignment is to be done

More information

Lab 9: Pointers and arrays

Lab 9: Pointers and arrays CMSC160 Intro to Algorithmic Design Blaheta Lab 9: Pointers and arrays 3 Nov 2011 As promised, we ll spend today working on using pointers and arrays, leading up to a game you ll write that heavily involves

More information

CIT 590 Homework 5 HTML Resumes

CIT 590 Homework 5 HTML Resumes CIT 590 Homework 5 HTML Resumes Purposes of this assignment Reading from and writing to files Scraping information from a text file Basic HTML usage General problem specification A website is made up of

More information

The name of our class will be Yo. Type that in where it says Class Name. Don t hit the OK button yet.

The name of our class will be Yo. Type that in where it says Class Name. Don t hit the OK button yet. Mr G s Java Jive #2: Yo! Our First Program With this handout you ll write your first program, which we ll call Yo. Programs, Classes, and Objects, Oh My! People regularly refer to Java as a language that

More information

CS 241 Data Organization using C

CS 241 Data Organization using C CS 241 Data Organization using C Fall 2018 Instructor Name: Dr. Marie Vasek Contact: Private message me on the course Piazza page. Office: Farris 2120 Office Hours: Tuesday 2-4pm and Thursday 9:30-11am

More information

CMSC 201 Spring 2019 Lab 06 Lists

CMSC 201 Spring 2019 Lab 06 Lists CMSC 201 Spring 2019 Lab 06 Lists Assignment: Lab 06 Lists Due Date: Thursday, March 7th by 11:59:59 PM Value: 10 points This week s lab will put into practice the concepts you learned about lists: indexing,

More information

Assignment III: Graphing Calculator

Assignment III: Graphing Calculator Assignment III: Graphing Calculator Objective You will enhance your Calculator to create a graph of the program the user has entered which can be zoomed in on and panned around. Your app will now work

More information

6.170 Laboratory in Software Engineering Java Style Guide. Overview. Descriptive names. Consistent indentation and spacing. Page 1 of 5.

6.170 Laboratory in Software Engineering Java Style Guide. Overview. Descriptive names. Consistent indentation and spacing. Page 1 of 5. Page 1 of 5 6.170 Laboratory in Software Engineering Java Style Guide Contents: Overview Descriptive names Consistent indentation and spacing Informative comments Commenting code TODO comments 6.170 Javadocs

More information

Lab 1 Introduction to UNIX and C

Lab 1 Introduction to UNIX and C Name: Lab 1 Introduction to UNIX and C This first lab is meant to be an introduction to computer environments we will be using this term. You must have a Pitt username to complete this lab. The doc is

More information

CS 241 Data Organization. August 21, 2018

CS 241 Data Organization. August 21, 2018 CS 241 Data Organization August 21, 2018 Contact Info Instructor: Dr. Marie Vasek Contact: Private message me on the course Piazza page. Office: Room 2120 of Farris Web site: www.cs.unm.edu/~vasek/cs241/

More information

Before submitting the file project5.py, check carefully that the header above is correctly completed:

Before submitting the file project5.py, check carefully that the header above is correctly completed: 1 of 10 8/26/2013 12:43 PM Due date: December 6th, 23:59PM Teamwork reflection due date: December 6th, 23:59PM This is a team project. The project is worth 100 points. All the team members will get an

More information

DOING MORE WITH EXCEL: MICROSOFT OFFICE 2010

DOING MORE WITH EXCEL: MICROSOFT OFFICE 2010 DOING MORE WITH EXCEL: MICROSOFT OFFICE 2010 GETTING STARTED PAGE 02 Prerequisites What You Will Learn MORE TASKS IN MICROSOFT EXCEL PAGE 03 Cutting, Copying, and Pasting Data Filling Data Across Columns

More information

Assignment 1. Application Development

Assignment 1. Application Development Application Development Assignment 1 Content Application Development Day 1 Lecture The lecture provides an introduction to programming, the concept of classes and objects in Java and the Eclipse development

More information

CMSC 201 Spring 2016 Homework 7 Strings and File I/O

CMSC 201 Spring 2016 Homework 7 Strings and File I/O CMSC 201 Spring 2016 Homework 7 Strings and File I/O Assignment: Homework 7 Strings and File I/O Due Date: Monday, April 4th, 2016 by 8:59:59 PM Value: 40 points Homework 7 is designed to help you practice

More information

[ the academy_of_code] Senior Beginners

[ the academy_of_code] Senior Beginners [ the academy_of_code] Senior Beginners 1 Drawing Circles First step open Processing Open Processing by clicking on the Processing icon (that s the white P on the blue background your teacher will tell

More information

Lab 1 Implementing a Simon Says Game

Lab 1 Implementing a Simon Says Game ECE2049 Embedded Computing in Engineering Design Lab 1 Implementing a Simon Says Game In the late 1970s and early 1980s, one of the first and most popular electronic games was Simon by Milton Bradley.

More information

CSSE2002/7023 The University of Queensland

CSSE2002/7023 The University of Queensland CSSE2002 / CSSE7023 Semester 1, 2016 Assignment 1 Goal: The goal of this assignment is to gain practical experience with data abstraction, unit testing and using the Java class libraries (the Java 8 SE

More information

CS 2110 Fall Instructions. 1 Installing the code. Homework 4 Paint Program. 0.1 Grading, Partners, Academic Integrity, Help

CS 2110 Fall Instructions. 1 Installing the code. Homework 4 Paint Program. 0.1 Grading, Partners, Academic Integrity, Help CS 2110 Fall 2012 Homework 4 Paint Program Due: Wednesday, 12 November, 11:59PM In this assignment, you will write parts of a simple paint program. Some of the functionality you will implement is: 1. Freehand

More information

Write for your audience

Write for your audience Comments Write for your audience Program documentation is for programmers, not end users There are two groups of programmers, and they need different kinds of documentation Some programmers need to use

More information

Lab 2 Building on Linux

Lab 2 Building on Linux Lab 2 Building on Linux Assignment Details Assigned: January 28 th, 2013. Due: January 30 th, 2013 at midnight. Background This assignment should introduce the basic development tools on Linux. This assumes

More information

Intro to Programming. Unit 7. What is Programming? What is Programming? Intro to Programming

Intro to Programming. Unit 7. What is Programming? What is Programming? Intro to Programming Intro to Programming Unit 7 Intro to Programming 1 What is Programming? 1. Programming Languages 2. Markup vs. Programming 1. Introduction 2. Print Statement 3. Strings 4. Types and Values 5. Math Externals

More information

Assignment III: Graphing Calculator

Assignment III: Graphing Calculator Assignment III: Graphing Calculator Objective You will enhance your Calculator to create a graph of the program the user has entered which can be zoomed in on and panned around. Your app will now work

More information

Assignment #1: and Karel the Robot Karel problems due: 3:15pm on Friday, October 4th due: 11:59pm on Sunday, October 6th

Assignment #1:  and Karel the Robot Karel problems due: 3:15pm on Friday, October 4th  due: 11:59pm on Sunday, October 6th Mehran Sahami Handout #7 CS 06A September, 0 Assignment #: Email and Karel the Robot Karel problems due: :pm on Friday, October th Email due: :9pm on Sunday, October 6th Part I Email Based on a handout

More information

CS 177 Recitation. Week 1 Intro to Java

CS 177 Recitation. Week 1 Intro to Java CS 177 Recitation Week 1 Intro to Java Questions? Computers Computers can do really complex stuff. How? By manipulating data according to lists of instructions. Fundamentally, this is all that a computer

More information

Unix/Linux Basics. Cpt S 223, Fall 2007 Copyright: Washington State University

Unix/Linux Basics. Cpt S 223, Fall 2007 Copyright: Washington State University Unix/Linux Basics 1 Some basics to remember Everything is case sensitive Eg., you can have two different files of the same name but different case in the same folder Console-driven (same as terminal )

More information

CSE115 Lab exercises for week 1 of recitations Spring 2011

CSE115 Lab exercises for week 1 of recitations Spring 2011 Introduction In this first lab you will be introduced to the computing environment in the Baldy 21 lab. If you are familiar with Unix or Linux you may know how to do some or all of the following tasks.

More information

Your First Windows Form

Your First Windows Form Your First Windows Form From now on, we re going to be creating Windows Forms Applications, rather than Console Applications. Windows Forms Applications make use of something called a Form. The Form is

More information

Program 1: Generating Summation Puzzles

Program 1: Generating Summation Puzzles Program 1: Generating Summation Puzzles Owen Kaser October 3, 2015 Due: 15 October 2015, end of class. 1 Introduction Textbook section 5.3.3 gives pseudocode to solve a given summation puzzle. We want

More information

Twitter Tag Cloud Documentation

Twitter Tag Cloud Documentation Twitter Tag Cloud Documentation Chryssy Joski Capstone Seminar Spring 2016 1. Hook-up and install First, load the following scripts to an accessible website (I put mine on compsci02): apicheck.php, TwitterAPIExchange.php,

More information

Lab 1 Implementing a Simon Says Game

Lab 1 Implementing a Simon Says Game ECE2049 Embedded Computing in Engineering Design Lab 1 Implementing a Simon Says Game In the late 1970s and early 1980s, one of the first and most popular electronic games was Simon by Milton Bradley.

More information

CSE wi Midterm Exam 2/8/18. Name UW ID #

CSE wi Midterm Exam 2/8/18. Name UW ID # Name UW ID # There are 11 questions worth a total of 120 points. Please budget your time so you get to all of the questions. Keep your answers brief and to the point. The exam is closed book, closed notes,

More information

CSE 142/143 Unofficial Commenting Guide Eric Arendt, Alyssa Harding, Melissa Winstanley

CSE 142/143 Unofficial Commenting Guide Eric Arendt, Alyssa Harding, Melissa Winstanley CSE 142/143 Unofficial Commenting Guide Eric Arendt, Alyssa Harding, Melissa Winstanley In Brief: What You Need to Know to Comment Methods in CSE 143 Audience o A random person you don t know who wants

More information

CSE 11 Midterm Fall 2008

CSE 11 Midterm Fall 2008 Signature cs11f Name Student ID CSE 11 Midterm Fall 2008 Page 1 (10 points) Page 2 (22 points) Page 3 (23 points) Page 4 (17 points) Page 5 (12 points) Total (84 points = 80 base points + 4 points EC [5%])

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

Instructions PLEASE READ (notice bold and underlined phrases)

Instructions PLEASE READ (notice bold and underlined phrases) Lab Exercises wk02 Lab Basics First Lab of the course Required Reading Java Foundations - Section 1.1 - The Java Programming Language Instructions PLEASE READ (notice bold and underlined phrases) Lab Exercise

More information

Excel Basics: Working with Spreadsheets

Excel Basics: Working with Spreadsheets Excel Basics: Working with Spreadsheets E 890 / 1 Unravel the Mysteries of Cells, Rows, Ranges, Formulas and More Spreadsheets are all about numbers: they help us keep track of figures and make calculations.

More information

CS 134 Programming Exercise 2:

CS 134 Programming Exercise 2: CS 134 Programming Exercise 2: Dirty Laundry Objective: To gain experience using conditionals. The Scenario. One thing some students have to figure out for the first time when they come to college is how

More information

Midterm I - CSE11 Fall 2013 CLOSED BOOK, CLOSED NOTES 50 minutes, 100 points Total.

Midterm I - CSE11 Fall 2013 CLOSED BOOK, CLOSED NOTES 50 minutes, 100 points Total. Midterm I - CSE11 Fall 2013 CLOSED BOOK, CLOSED NOTES 50 minutes, 100 points Total. Name: ID: Problem 1) (8 points) For the following code segment, what are the values of i, j, k, and d, after the segment

More information

Project 1 Balanced binary

Project 1 Balanced binary CMSC262 DS/Alg Applied Blaheta Project 1 Balanced binary Due: 7 September 2017 You saw basic binary search trees in 162, and may remember that their weakness is that in the worst case they behave like

More information

Computer Science 62 Lab 8

Computer Science 62 Lab 8 Computer Science 62 Lab 8 Wednesday, March 26, 2014 Today s lab has two purposes: it is a continuation of the binary tree experiments from last lab and an introduction to some command-line tools. The Java

More information

Using the Zoo Workstations

Using the Zoo Workstations Using the Zoo Workstations Version 1.86: January 16, 2014 If you ve used Linux before, you can probably skip many of these instructions, but skim just in case. Please direct corrections and suggestions

More information

EXCEL BASICS: MICROSOFT OFFICE 2010

EXCEL BASICS: MICROSOFT OFFICE 2010 EXCEL BASICS: MICROSOFT OFFICE 2010 GETTING STARTED PAGE 02 Prerequisites What You Will Learn USING MICROSOFT EXCEL PAGE 03 Opening Microsoft Excel Microsoft Excel Features Keyboard Review Pointer Shapes

More information

Tutorial 1: Unix Basics

Tutorial 1: Unix Basics Tutorial 1: Unix Basics To log in to your ece account, enter your ece username and password in the space provided in the login screen. Note that when you type your password, nothing will show up in the

More information

GoLive will first ask you if your new site will be for one individual or a work group; select for a Single User, and click Next.

GoLive will first ask you if your new site will be for one individual or a work group; select for a Single User, and click Next. Getting Started From the Start menu, located the Adobe folder which should contain the Adobe GoLive 6.0 folder. Inside this folder, click Adobe GoLive 6.0. GoLive will open to its initial project selection

More information

CS 134 Programming Exercise 3:

CS 134 Programming Exercise 3: CS 134 Programming Exercise 3: Repulsive Behavior Objective: To gain experience implementing classes and methods. Note that you must bring a program design to lab this week! The Scenario. For this lab,

More information

CS 201 Advanced Object-Oriented Programming Lab 4 - Asteroids, Part 2 Due: February 24/25, 11:30 PM

CS 201 Advanced Object-Oriented Programming Lab 4 - Asteroids, Part 2 Due: February 24/25, 11:30 PM CS 201 Advanced Object-Oriented Programming Lab 4 - Asteroids, Part 2 Due: February 24/25, 11:30 PM Introduction to the Assignment In this lab, you will complete the Asteroids program that you started

More information

[ 8 marks ] Demonstration of Programming Concepts

[ 8 marks ] Demonstration of Programming Concepts Assignment 9 Due: Mon, December 5 before 11:59 PM (no extensions, no grace days, late assignments receive 0) Final Project This is a self-directed assignment where you get to decide what your Processing

More information

DOING MORE WITH EXCEL: MICROSOFT OFFICE 2013

DOING MORE WITH EXCEL: MICROSOFT OFFICE 2013 DOING MORE WITH EXCEL: MICROSOFT OFFICE 2013 GETTING STARTED PAGE 02 Prerequisites What You Will Learn MORE TASKS IN MICROSOFT EXCEL PAGE 03 Cutting, Copying, and Pasting Data Basic Formulas Filling Data

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

How to Make a Book Interior File

How to Make a Book Interior File How to Make a Book Interior File These instructions are for paperbacks or ebooks that are supposed to be a duplicate of paperback copies. (Note: This is not for getting a document ready for Kindle or for

More information

Soda Machine Laboratory

Soda Machine Laboratory Soda Machine Laboratory Introduction This laboratory is intended to give you experience working with multiple queue structures in a familiar real-world setting. The given application models a soda machine

More information

CS 170 Java Programming 1. Week 12: Creating Your Own Types

CS 170 Java Programming 1. Week 12: Creating Your Own Types CS 170 Java Programming 1 Week 12: Creating Your Own Types What s the Plan? Topic 1: A Little Review Work with loops to process arrays Write functions to process 2D Arrays in various ways Topic 2: Creating

More information

Programming Lab 1 (JS Hwk 3) Due Thursday, April 28

Programming Lab 1 (JS Hwk 3) Due Thursday, April 28 Programming Lab 1 (JS Hwk 3) Due Thursday, April 28 Lab You may work with partners for these problems. Make sure you put BOTH names on the problems. Create a folder named JSLab3, and place all of the web

More information

:

: CS200 Assignment 5 HTML and CSS Due Monday February 11th 2019, 11:59 pm Readings and Resources On the web: http://validator.w3.org/ : a site that will check a web page for faulty HTML tags http://jigsaw.w3.org/css-validator/

More information

CPS109 Lab 1. i. To become familiar with the Ryerson Computer Science laboratory environment.

CPS109 Lab 1. i. To become familiar with the Ryerson Computer Science laboratory environment. CPS109 Lab 1 Source: Partly from Big Java lab1, by Cay Horstmann. Objective: i. To become familiar with the Ryerson Computer Science laboratory environment. ii. To obtain your login id and to set your

More information

The compiler is spewing error messages.

The compiler is spewing error messages. Appendix B Debugging There are a few different kinds of errors that can occur in a program, and it is useful to distinguish between them in order to track them down more quickly. Compile-time errors are

More information

The Command Shell. Fundamentals of Computer Science

The Command Shell. Fundamentals of Computer Science The Command Shell Fundamentals of Computer Science Outline Starting the Command Shell Locally Remote Host Directory Structure Moving around the directories Displaying File Contents Compiling and Running

More information

C++ Style Guide. 1.0 General. 2.0 Visual Layout. 3.0 Indentation and Whitespace

C++ Style Guide. 1.0 General. 2.0 Visual Layout. 3.0 Indentation and Whitespace C++ Style Guide 1.0 General The purpose of the style guide is not to restrict your programming, but rather to establish a consistent format for your programs. This will help you debug and maintain your

More information

CS61BL: Data Structures & Programming Methodology Summer Project 1: Dots!

CS61BL: Data Structures & Programming Methodology Summer Project 1: Dots! CS61BL: Data Structures & Programming Methodology Summer 2014 Project 1: Dots! Note on compiling Board.java You will not be able to compile Board.java until you make your own CantRemoveException class.

More information

Excel Basics Rice Digital Media Commons Guide Written for Microsoft Excel 2010 Windows Edition by Eric Miller

Excel Basics Rice Digital Media Commons Guide Written for Microsoft Excel 2010 Windows Edition by Eric Miller Excel Basics Rice Digital Media Commons Guide Written for Microsoft Excel 2010 Windows Edition by Eric Miller Table of Contents Introduction!... 1 Part 1: Entering Data!... 2 1.a: Typing!... 2 1.b: Editing

More information

Project #1 Seamcarve

Project #1 Seamcarve Project #1 Seamcarve Out: Thursday, January 24 In: This is real, this is me Im exactly where I m supposed to be, now Gonna let the light, shine on me Now I ve found, who I am There s no way to hold it

More information

Lab 1 1 Due Wed., 2 Sept. 2015

Lab 1 1 Due Wed., 2 Sept. 2015 Lab 1 1 Due Wed., 2 Sept. 2015 CMPSC 112 Introduction to Computer Science II (Fall 2015) Prof. John Wenskovitch http://cs.allegheny.edu/~jwenskovitch/teaching/cmpsc112 Lab 1 - Version Control with Git

More information