CS 463 Project 1 Imperative/OOP Fractals
|
|
- Ursula Walters
- 5 years ago
- Views:
Transcription
1 CS 463 Project 1 Imperative/OOP Fractals The goal of a couple of our projects is to compare a simple project across different programming paradigms. This semester, we will calculate the Mandelbrot Set and Julia Set in both an imperative and functional language (Java and Haskell). Files Tester: Zoomer: Deadline: 11:59pm, Wednesday, February 20 th Remember, a project is a bit larger than a homework Turning it in Place all your files, including a README.txt file with any extra information, into a folder named after your username. Zip this folder and submit it to Blackboard. The Mandelbrot Set What is this? Well, it looks something like the following: Specifically, the dark regions are the Mandelbrot Set, and the zone that is colored various shades of red in our picture is outside of the set. The Mandelbrot Set is drawn across the complex plane real numbers on the horizontal axis, imaginary numbers on the vertical axis. Although we are zoomed in slightly here, the entire set fits inside [-2,2] and [-2i, 2i].
2 How do we calculate the Mandelbrot Set? Each individual point on the complex plane is either in the set or not. To find out if a particular point p is in the set, we let Z0=0, c=p, and repeatedly calculate the next Z using complex number operations: Zn+1 = (Zn) 2 + c If successive values of Z never get larger than 2, then the point c is in the set. If it escapes (grows too large and thus it can't get under 2 ever again), then it is not in the set. We must calculate "enough" iterations to approximate the Mandelbrot Set to sufficient accuracy. The more details you want to see on the boundary of the set, the more iterations you need. About 50 is sufficient for the image above, but if we were to zoom in we'd quickly want hundreds, thousands, or even millions of iterations per point to ensure you see the detail that exists at that level. Interesting Notes The Mandelbrot Set is connected all the black pixels are actually connected in the full set. By coloring points not in the set based on how many iterations it took for Z to escape, it makes for some very colorful images, and helps point out where the boundary of the set is. The length of the set's boundary is infinite. You can zoom in arbitrarily far at any point along the boundary and there will always be more details to see, as long as you're willing to wait around and precisely calculate each point! How do we calculate a Julia Set? The Julia Set is another fun group of fractals that we can define quite similarly to the Mandelbrot Set. We will again use the same function, only this time when we want to check if a point p is in the set or not, we let Z0=p, and c is some pre-determined constant. We then again iterate the same function (Zn+1 = (Zn) 2 + c) and see if it escapes, again by checking if the absolute value of Zn gets larger than 2. If we choose c= i, we get the image to the right. Task You are going to write a program in Java that calculates the Mandelbrot Set and the Julia Set, and stores the results in a file. You must have specific methods available in order for me to test your code, but also so that you can hook into a minimal GUI that will be provided for your viewing pleasure.
3 class Complex You must create your own version of complex numbers to use in this project, including the definitions below. It represents a Complex number, and also offers some binary operator methods (as static methods). You might visit the wiki page on complex numbers for a refresher of these definitions. Fields: double r, i; Methods: public Complex (double r, double i){ } public static Complex add(complex a, Complex b){ } public static Complex sub(complex a, Complex b){ } public static Complex mul(complex a, Complex b){ } public static double abs(complex c){ String tostring() { /*your choice*/ } public Complex copy(){ } abstract class Fractal You will create a single class that relates both Mandelbrot and Julia classes. This will store all the information related to the structure of the viewing region, iterations, and so on, but won't encode the actual function that gets iterated. Fields: Complex low, high; int nrows, ncols; int maxiters; int[][]escapevals; Complex c; // lower-left and upper-right coordinates // pixel counting how many pixels in each direction // how many iterations to consider for set inclusion // cached answers for each point's iterations to escape // what is the c value of the iteration function? (boring for Mandelbrot) Methods: public abstract int escapecount(complex p); Given one point p, how many iterations can you follow, up to maxiters, before it escapes? This means all points in the set will return maxiters. public int[][] escapes() { } Calculate escape counts for each point indicated by current instance variables; return this array of escape counts. First row is the HIGHEST imaginary values row, from low real values to high values as you go through the first row of this array. Starting with range low=-2-2i, high=+2+2i, this means you should have (-2+2i), (+2+2i), (-2-2i), and (+2-2i). Draw yourself a picture so you understand the layout. public void write(string filename) { } Given a file name, calculate all escape counts as needed, and create a file containing these lines. (See example below): o nrows ncols maxiters o lowrealval highrealval lowimaginaryval highimaginaryval o realc imaginaryc (parts of the constant c) o <a blank line> o each row from escapevals as a line, with its values separated by whitespace (you should pad all items to the same minimal spacing width as shown below) public void zoom(double factor){ } Given a factor, stay centered on the same spot but scale it by factor so that each dimension sees 1/factor of its previous range. For instance, zooming in by factor=2, we should see half the distance of the previous real range and half the distance of the previous imaginary range. This doesn't mean we're seeing half the original image, by the way. public void updatedimensions(complex low, Complex high) { } Straight-up reset low and high, and recalculate other stale state (escape counts) as public String tostring() { /*your choice*/ } Make it pretty. might help with write.
4 class Mandelbrot public Mandelbrot(Complex low, Complex high, int nrows, int ncols, int maxiters){ } Set all fields (note: not all are parameters). public int escapecount(complex p){ } implement this abstract method inherited from the parent class so that it correctly uses the given point to calculate how many iterations (up to maxiters) before it public String tostring(){ /*your choice*/ } Add any more methods as needed. public static void main(string[] args){ }. Accept eight command line arguments: doubles for the four dimensions (lowr, highr, lowi, highi), followed by three integers (nrows, ncols, maxiters). Lastly, accept the filename. Create the Mandelbrot object, calculate all escape counts, and write to the file. Pay close attention to the arguments order! See an example below. Usage will be like this: demo$ java Mandelbrot tinym.txt And then tiny.txt would look like this: demo$ cat tinym.txt Definitely not tiny.. The file first echoes the number of rows, number of columns, and the maximum number of iterations checked. Then we see the dimensions (lowr, highr, lowi, highi). C is always 0+0i for Mandelbrot, but the file format will be used for Julia sets too so we need this line always. Notice that some spots are at the total number of iterations (40 here); those are assumed to be in the set. Also, note that it uses three columns for each number: a space, maybe a second space for numbers <10, and then the number; this just makes it look nice. If maxiters were a three-column number, we'd need four columns for each number. We normally would want much larger parameters say, 400x400, with at least 50 iterations. If you are careful to give the same spacing for each escape value, and you make your font ridiculously tiny, you can get a neat ASCII art representation of the set, as shown in the blue screencap of a terminal above. No GUI necessary! Ah, cheap programming thrills. When performing your calculations, make sure that the leftmost column starts at -2, and the rightmost column has a real component of +2. The rest should all be distributed evenly. Watch out for fenceposting issues! Similarly so for the imaginary components, make sure they stretch all the way from -2i to +2i.
5 class Julia public Julia (Complex low, Complex high, int nrows, int ncols, int maxiters, Complex c){ } Same as Mandelbrot set all fields, including escapevals. public int escapecount(complex p){ } Same as with class Mandelbrot, only implement the correct function for Julia public String tostring(){ /*your choice*/ } Add any more methods as needed. public static void main(string[] args){ }. Accept ten command line arguments: doubles for the four dimensions (lowr, highr, lowi, highi), followed by three integers (nrows, ncols, maxiters). Two extra ones here that Mandelbrot didn't have, the real and imaginary components of c. Lastly, accept the filename. Create the Julia object, calculate all escape counts, and write to the file. It operates the same as the Mandelbrot example. Usage will be like this: demo$ java Julia tinyj.txt And then tiny.txt would look like this: demo$ cat tinyj.txt Visualizing it: Using a GUI I'm not generally interested in GUIs too much personally, but this is a great chance to do so. Provided will be a Java file (Zoomer.java) that will directly access your classes' methods, and it will try to color code them nicely. Currently, you'd have to directly modify a few constants at the top (IMG_WIDTH, Complex c, etc). You'll have to add a few methods to fully use it, but you can click-drag to zoom in, and change the number of iterations. Fun! Mostly, this is a simple way to check if you're getting the right format for everything it's not part of the testing or grading. You're free to make your own GUI backend if you'd like you can select the colors probably a lot better than I did. If you do so, I'd love to see it! Usage: demo$ java Zoomer
6 Grading Grading is based on correctness, and performed via test cases. We will try to award credit, or subtract points, based on the following weightings. Of course, when things go wrong, it's often in interesting and unexpected ways. We'll try to be fair. Complex 15% Fractal escapes 15% write 10% zoom 10% updatedimensions 5% Mandelbrot constructor 10% escapecount 10% main 5% Julia constructor 5% escapecount 10% main 5% Lastly: comment your code well. The more interesting or difficult it is, the more comments it should have. No block of code should be without comments, though repetitive blocks may be commented mostly at the beginning. Low/uncommented code may lose points; you should be able to comment your code by a deadline by this point in your college career. turn in your work correctly, and on time according to our syllabus' description of our late work policy. don't import anything you didn't write for this assignment (other than for writing to files). This is especially important when defining your Complex class; I'm looking for your own definition. (You may look up the mathematics of complex numbers, e.g. on Wikipedia, but you may not look up code for complex numbers in any language).
Spring CS Homework 3 p. 1. CS Homework 3
Spring 2018 - CS 111 - Homework 3 p. 1 Deadline 11:59 pm on Friday, February 9, 2018 Purpose CS 111 - Homework 3 To try out another testing function, check-within, to get more practice using the design
More informationNote: 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 2017 Miniassignment 1 50 points Due Date: Monday, October 16, 11:59 pm (midnight) Late deadline (25% penalty): Tuesday, October 17, 11:59 pm General information This assignment is to be
More informationCS 106 Winter Lab 05: User Interfaces
CS 106 Winter 2018 Lab 05: User Interfaces Due: Wednesday, February 6th, 11:59pm This lab will allow you to practice User Interfaces using Direct Manipulation and ControlP5. Each question is on a separate
More informationTips 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 informationProgramming 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 informationQuiz 3; Tuesday, January 27; 5 minutes; 5 points [Solutions follow on next page]
Quiz 3; Tuesday, January 27; 5 minutes; 5 points [Solutions follow on next page] 1. Does the Java expression x + y == z have a side-effect? If so, what is it? 2. Write a function named add that can add
More informationTips 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 informationNote: 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************ THIS PROGRAM IS NOT ELIGIBLE FOR LATE SUBMISSION. ALL SUBMISSIONS MUST BE RECEIVED BY THE DUE DATE/TIME INDICATED ABOVE HERE
Program 10: 40 points: Due Tuesday, May 12, 2015 : 11:59 p.m. ************ THIS PROGRAM IS NOT ELIGIBLE FOR LATE SUBMISSION. ALL SUBMISSIONS MUST BE RECEIVED BY THE DUE DATE/TIME INDICATED ABOVE HERE *************
More informationCS 361 Computer Systems Fall 2017 Homework Assignment 4 - Inter-Process Communications & I/O
CS 361 Computer Systems Fall 2017 Homework Assignment 4 - Inter-Process Communications & I/O Overall Assignment For this assignment, you are to write three programs that will work together using inter-process
More informationUAccess ANALYTICS. Fundamentals of Reporting. updated v.1.00
UAccess ANALYTICS Arizona Board of Regents, 2010 THE UNIVERSITY OF ARIZONA updated 07.01.2010 v.1.00 For information and permission to use our PDF manuals, please contact uitsworkshopteam@listserv.com
More informationProgramming 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 informationBASIC COMPUTATION. public static void main(string [] args) Fundamentals of Computer Science I
BASIC COMPUTATION x public static void main(string [] args) Fundamentals of Computer Science I Outline Using Eclipse Data Types Variables Primitive and Class Data Types Expressions Declaration Assignment
More informationCIS 194: Homework 6. Due Monday, February 25. Fibonacci numbers
CIS 194: Homework 6 Due Monday, February 25 Files you should submit: Fibonacci.hs This week we learned about Haskell s lazy evaluation. This homework assignment will focus on one particular consequence
More informationNote: 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 Spring 2018 Miniassignment 1 40 points Due Date: Thursday, March 8, 11:59 pm (midnight) Late deadline (25% penalty): Friday, March 9, 11:59 pm General information This assignment is to be done
More informationMITOCW watch?v=flgjisf3l78
MITOCW watch?v=flgjisf3l78 The following content is provided under a Creative Commons license. Your support will help MIT OpenCourseWare continue to offer high-quality educational resources for free. To
More informationCMSC 201 Spring 2017 Project 1 Number Classifier
CMSC 201 Spring 2017 Project 1 Number Classifier Assignment: Project 1 Number Classifier Due Date: Design Document: Saturday, March 11th, 2017 by 8:59:59 PM Project: Friday, March 17th, 2017 by 8:59:59
More informationSkill 1: Multiplying Polynomials
CS103 Spring 2018 Mathematical Prerequisites Although CS103 is primarily a math class, this course does not require any higher math as a prerequisite. The most advanced level of mathematics you'll need
More informationAndroid Programming Family Fun Day using AppInventor
Android Programming Family Fun Day using AppInventor Table of Contents A step-by-step guide to making a simple app...2 Getting your app running on the emulator...9 Getting your app onto your phone or tablet...10
More informationTips 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 informationDeadline. Purpose. How to submit. Important notes. CS Homework 9. CS Homework 9 p :59 pm on Friday, April 7, 2017
CS 111 - Homework 9 p. 1 Deadline 11:59 pm on Friday, April 7, 2017 Purpose CS 111 - Homework 9 To give you an excuse to look at some newly-posted C++ templates that you might find to be useful, and to
More informationPROFESSOR: Last time, we took a look at an explicit control evaluator for Lisp, and that bridged the gap between
MITOCW Lecture 10A [MUSIC PLAYING] PROFESSOR: Last time, we took a look at an explicit control evaluator for Lisp, and that bridged the gap between all these high-level languages like Lisp and the query
More informationFormal Methods of Software Design, Eric Hehner, segment 24 page 1 out of 5
Formal Methods of Software Design, Eric Hehner, segment 24 page 1 out of 5 [talking head] This lecture we study theory design and implementation. Programmers have two roles to play here. In one role, they
More informationEscape-Time Fractals
Escape-Time Fractals Main Concept Fractals are geometric shapes that exhibit self-similarity. That is, they have the same pattern at different scales. In fact, fractals continue to show intricate details
More informationMITOCW ocw f99-lec07_300k
MITOCW ocw-18.06-f99-lec07_300k OK, here's linear algebra lecture seven. I've been talking about vector spaces and specially the null space of a matrix and the column space of a matrix. What's in those
More informationCS 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 informationUsing the Tester CSC 352 September 3, 2015
Using the Tester CSC 352 September 3, 2015 The syllabus says, For programming problems great emphasis will be placed on the ability to deliver code whose output exactly matches the specification. Failing
More informationOur second exam is Monday, April 3. Note that it will not be possible to get all the homework submissions graded before the exam.
Com S 227 Spring 2017 Assignment 3 300 points Due Date:, Wednesday, March 29 11:59 pm (midnight) Late deadline (25% penalty): Thursday, March 30, 11:59 pm General information This assignment is to be done
More informationWeb-Friendly Sites. Planning & Design 1
Planning & Design 1 This tutorial presents useful tips and tricks to help you achieve a more Web-friendly design and make your sites more efficient. The following topics are discussed: How Z-order and
More informationJava Programming. Computer Science 112
Java Programming Computer Science 112 Review: Problem solving Class 4 is the Whole Point of Programming. Is there any particular one you'd like to go through? If you are desperately confused still, now
More informationCom 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 informationJava Programming. Computer Science 112
Java Programming Computer Science 112 Review: Problem solving Class 4 is the Whole Point of Programming. You can keep the papers; we gonna go through them on the board. If you are desperately confused
More informationCS179: GPU Programming Recitation 5: Rendering Fractals
CS179: GPU Programming Recitation 5: Rendering Fractals Rendering Fractals Volume data vs. texture memory Creating and using CUDA arrays Using PBOs for screen output Quaternion Julia Sets Rendering volume
More informationSlide 1 CS 170 Java Programming 1 Multidimensional Arrays Duration: 00:00:39 Advance mode: Auto
CS 170 Java Programming 1 Working with Rows and Columns Slide 1 CS 170 Java Programming 1 Duration: 00:00:39 Create a multidimensional array with multiple brackets int[ ] d1 = new int[5]; int[ ][ ] d2;
More informationRuby on Rails Welcome. Using the exercise files
Ruby on Rails Welcome Welcome to Ruby on Rails Essential Training. In this course, we're going to learn the popular open source web development framework. We will walk through each part of the framework,
More informationChapter 10 Recursion
Chapter 10 Recursion Written by Dr. Mark Snyder [minor edits for this semester by Dr. Kinga Dobolyi] Recursion implies that something is defined in terms of itself. We will see in detail how code can be
More informationCOMP 122/L Lecture 1. Kyle Dewey
COMP 122/L Lecture 1 Kyle Dewey About Me I research automated testing techniques and their intersection with CS education This is my first semester at CSUN Third time teaching this content About this Class
More informationCS2630: Computer Organization Homework 1 Bits, bytes, and memory organization Due January 25, 2017, 11:59pm
CS2630: Computer Organization Homework 1 Bits, bytes, and memory organization Due January 25, 2017, 11:59pm Instructions: Show your work. Correct answers with no work will not receive full credit. Whether
More informationThe Stack, Free Store, and Global Namespace
Pointers This tutorial is my attempt at clarifying pointers for anyone still confused about them. Pointers are notoriously hard to grasp, so I thought I'd take a shot at explaining them. The more information
More informationClaremont McKenna College Computer Science
Claremont McKenna College Computer Science CS 51 Handout 4: Problem Set 4 February 10, 2011 This problem set is due 11:50pm on Wednesday, February 16. As usual, you may hand in yours until I make my solutions
More informationAscii Art. CS 1301 Individual Homework 7 Ascii Art Due: Monday April 4 th, before 11:55pm Out of 100 points
CS 1301 Individual Homework 7 Ascii Art Due: Monday April 4 th, before 11:55pm Out of 100 points Files to submit: 1. HW7.py THIS IS AN INDIVIDUAL ASSIGNMENT! You should work individually on this assignment.
More informationAssignment #2: Intro to Java Due: 11AM PST on Wednesday, July 12
Nick Troccoli Assignment 2 CS 106A July 5, 2017 Assignment #2: Intro to Java Due: 11AM PST on Wednesday, July 12 This assignment should be done individually (not in pairs) Based on handouts by Mehran Sahami,
More information18) The perpendiculars slices not intersecting origo
18) The perpendiculars slices not intersecting origo In the last article regarding cubic parameter space, we had a look at those special 2D-slices of the six perpendicular systems which intersect origo.
More informationProject #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 informationCS103 Spring 2018 Mathematical Vocabulary
CS103 Spring 2018 Mathematical Vocabulary You keep using that word. I do not think it means what you think it means. - Inigo Montoya, from The Princess Bride Consider the humble while loop in most programming
More informationCS112 - INTRODUCTION TO PROGRAMMING
CS112 - INTRODUCTION TO PROGRAMMING Programming Project #2 - Due Wednesday, March 2, at the start of class Purposes: 1. To give you further experience with Java arithmetic and the use of the Math class.
More informationBinary Search. CS 5010 Program Design Paradigms Bootcamp Lesson 8.2
Binary Search CS 5010 Program Design Paradigms Bootcamp Lesson 8.2 Mitchell Wand, 2012-2017 This work is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License. 1 Introduction
More informationCS Homework 2 p. 1. CS Homework 2
CS 111 - Homework 2 p. 1 Deadline 11:59 pm on Friday, February 2, 2018 Purpose CS 111 - Homework 2 To practice defining and using named constants and check-expect expressions, and to practice using the
More informationBefore 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 informationRecursion. Fundamentals of Computer Science
Recursion Fundamentals of Computer Science Outline Recursion A method calling itself All good recursion must come to an end A powerful tool in computer science Allows writing elegant and easy to understand
More informationProgramming 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 informationOur second exam is Thursday, November 10. Note that it will not be possible to get all the homework submissions graded before the exam.
Com S 227 Fall 2016 Assignment 3 300 points Due Date: Wednesday, November 2, 11:59 pm (midnight) Late deadline (25% penalty): Thursday, November 2, 11:59 pm General information This assignment is to be
More informationUV Mapping to avoid texture flaws and enable proper shading
UV Mapping to avoid texture flaws and enable proper shading Foreword: Throughout this tutorial I am going to be using Maya s built in UV Mapping utility, which I am going to base my projections on individual
More informationPhase 2: Due 11/28/18: Additional code to add, move and remove vertices in response to user mouse clicks on the screen.
Fall 2018 CS313 Project Implementation of a GUI to work with Graphs. Reminder: This is a pass/fail assignment. If you fail the assignment you will lose half a grade from your course grade. If you pass
More informationUsing the API: Introductory Graphics Java Programming 1 Lesson 8
Using the API: Introductory Graphics Java Programming 1 Lesson 8 Using Java Provided Classes In this lesson we'll focus on using the Graphics class and its capabilities. This will serve two purposes: first
More informationJava Programming. Computer Science 112
Java Programming Computer Science 112 Yay Programming! How did the RPS program go? Did you notice the part where I pointed at the answer on the board that we did together? Biggest problems in NumbersAndMath
More informationCISC 1600 Lecture 3.1 Introduction to Processing
CISC 1600 Lecture 3.1 Introduction to Processing Topics: Example sketches Drawing functions in Processing Colors in Processing General Processing syntax Processing is for sketching Designed to allow artists
More informationProject #1 Seamcarve
Project #1 Seamcarve Out: Thursday, January 25 In: It s no use, it s no use, we are doomed! You did it! You saved us, Perry the...cs16 Student -Doofenshmirtz 1 Installing, Handing In, Demos 1. To install,
More informationSlide 1 CS 170 Java Programming 1 Testing Karel
CS 170 Java Programming 1 Testing Karel Introducing Unit Tests to Karel's World Slide 1 CS 170 Java Programming 1 Testing Karel Hi Everybody. This is the CS 170, Java Programming 1 lecture, Testing Karel.
More informationFall CSEE W4119 Computer Networks Programming Assignment 1 - Simple Online Bidding System
Fall 2012 - CSEE W4119 Computer Networks Programming Assignment 1 - Simple Online Bidding System Prof. Gil Zussman due: Wed. 10/24/2012, 23:55 EST 1 Introduction In this programming assignment, you are
More informationYou Can Make a Difference! Due April 11/12 (Implementation plans due in class on 4/9)
You Can Make a Difference! Due April 11/12 (Implementation plans due in class on 4/9) In last week s lab, we introduced some of the basic mechanisms used to manipulate images in Java programs. Now, we
More informationProgramming 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 informationMITOCW watch?v=r6-lqbquci0
MITOCW watch?v=r6-lqbquci0 The following content is provided under a Creative Commons license. Your support will help MIT OpenCourseWare continue to offer high quality educational resources for free. To
More informationCS 2223 B15 Term. Homework 1 (100 pts.)
CS 2223 B15 Term. Homework 1 (100 pts.) Homework Instructions This homework is to be completed individually. If you have any questions as to what constitutes improper behavior, review the examples I have
More informationNetLogo Lab 3 Tutorial: Finding Peaks
NetLogo Lab 3 Tutorial: Finding Peaks You've already been exposed to the three types of agents you can give commands to in NetLogo: turtles, patches, and the observer. As you start to write your own procedures,
More informationArduino IDE Friday, 26 October 2018
Arduino IDE Friday, 26 October 2018 12:38 PM Looking Under The Hood Of The Arduino IDE FIND THE ARDUINO IDE DOWNLOAD First, jump on the internet with your favorite browser, and navigate to www.arduino.cc.
More informationCS3901 Intermediate Programming and Data Structures Winter 2008 (Q2 AY 08) Assignment #5. Due: noon Tuesday, 3 March 2008
CS3901 Intermediate Programming and Data Structures Winter 2008 (Q2 AY 08) Assignment #5 Due: noon Tuesday, 3 March 2008 Objective Practice with Java Create a CircularLinkedList implementation of List
More informationAssignment 3 Functions, Graphics, and Decomposition
Eric Roberts Handout #19 CS106A October 8, 1999 Assignment 3 Functions, Graphics, and Decomposition Due: Friday, October 15 [In] making a quilt, you have to choose your combination carefully. The right
More informationPractical 2: Ray Tracing
2017/2018, 4th quarter INFOGR: Graphics Practical 2: Ray Tracing Author: Jacco Bikker The assignment: The purpose of this assignment is to create a small Whitted-style ray tracer. The renderer should be
More informationCS 215 Software Design Homework 3 Due: February 28, 11:30 PM
CS 215 Software Design Homework 3 Due: February 28, 11:30 PM Objectives Specifying and checking class invariants Writing an abstract class Writing an immutable class Background Polynomials are a common
More informationRemaining Enhanced Labs
Here are some announcements regarding the end of the semester, and the specifications for the last Enhanced Labs. Don t forget that you need to take the Common Final Examination on Saturday, May 5, from
More informationProgramming 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 informationCOS 126 Midterm 2 Programming Exam Fall 2012
NAME:!! login id:!!! Precept: COS 126 Midterm 2 Programming Exam Fall 2012 is part of your exam is like a mini-programming assignment. You will create two programs, compile them, and run them on your laptop,
More informationHomework Assignment #3
CS 540-2: Introduction to Artificial Intelligence Homework Assignment #3 Assigned: Monday, February 20 Due: Saturday, March 4 Hand-In Instructions This assignment includes written problems and programming
More informationRecursion CSCI 136: Fundamentals of Computer Science II Keith Vertanen Copyright 2011
Recursion CSCI 136: Fundamentals of Computer Science II Keith Vertanen Copyright 2011 Recursion A method calling itself Overview A new way of thinking about a problem Divide and conquer A powerful programming
More informationCS2110 Assignment 3 Inheritance and Trees, Summer 2008
CS2110 Assignment 3 Inheritance and Trees, Summer 2008 Due Sunday July 13, 2008, 6:00PM 0 Introduction 0.1 Goals This assignment will help you get comfortable with basic tree operations and algorithms.
More information15-110: Principles of Computing, Spring 2018
15-110: Principles of Computing, Spring 2018 Problem Set 5 (PS5) Due: Friday, February 23 by 2:30PM via Gradescope Hand-in HANDIN INSTRUCTIONS Download a copy of this PDF file. You have two ways to fill
More informationCPS122 - OBJECT-ORIENTED SOFTWARE DEVELOPMENT
CPS122 - OBJECT-ORIENTED SOFTWARE DEVELOPMENT Individual Programming Project 2 Reading Quiz: Monday, February 17, at the start of class Preliminary Milestone Due: Monday, February 24, at the start of class
More informationCS 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 informationWelcome to Technology Class. 7 th Grade: Web Design 8 th Grade: Digital Animation
Welcome to Technology Class 7 th Grade: Web Design 8 th Grade: Digital Animation Syllabus We will go over important details of the syllabus YOU WILL NOT RECEIVE A NEW COPY IF YOU LOSE IT Be sure to return
More informationMITOCW MIT6_172_F10_lec18_300k-mp4
MITOCW MIT6_172_F10_lec18_300k-mp4 The following content is provided under a Creative Commons license. Your support will help MIT OpenCourseWare continue to offer high quality educational resources for
More informationCPS122 - OBJECT-ORIENTED SOFTWARE DEVELOPMENT
CPS122 - OBJECT-ORIENTED SOFTWARE DEVELOPMENT Individual Programming Project 2 Reading Quiz: Monday, February 20, at the start of class Preliminary Milestone Due: Monday, February 27, at the start of class
More informationHash Tables (Cont'd) Carlos Moreno uwaterloo.ca EIT https://ece.uwaterloo.ca/~cmoreno/ece250
(Cont'd) Carlos Moreno cmoreno @ uwaterloo.ca EIT-4103 https://ece.uwaterloo.ca/~cmoreno/ece250 Last time we introduced the idea behind Hash Tables, and discussed hash functions and the issue of collisions.
More informationLinked Lists. What is a Linked List?
Linked Lists Along with arrays, linked lists form the basis for pretty much every other data stucture out there. This makes learning and understand linked lists very important. They are also usually the
More informationJava Programming. Computer Science 112
Java Programming Computer Science 112 Homework thoughts. Zip. The. Src. Folder. A "Get" function shouldn't change anything. That's what Set does. An "IsXxxx" function shouldn't change anything. It's just
More informationCS 100 Spring Lecture Notes 3/8/05 Review for Exam 2
CS 100 Spring 2005 Lecture Notes 3/8/05 Review for Exam 2 The second exam is Thursday, March 10. It will cover topics from Homework 2 through Homework 4, including anything pertaining to binary representation.
More informationAbout this Course. Blackboard Student Orientation Course. About the Portal. Logging In. About the Course Layout. Showing the Course Menu
About this Course Blackboard Student Orientation Course Outline and Notes 1 Your progress is automatically saved Most slides follow a Read > Watch > Do structure Click the to close the Information Box
More informationAPCS-AB: Java. Recursion in Java December 12, week14 1
APCS-AB: Java Recursion in Java December 12, 2005 week14 1 Check point Double Linked List - extra project grade Must turn in today MBCS - Chapter 1 Installation Exercises Analysis Questions week14 2 Scheme
More informationCS/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 informationThe following content is provided under a Creative Commons license. Your support
MITOCW Recitation 4 The following content is provided under a Creative Commons license. Your support will help MIT OpenCourseWare continue to offer high quality educational resources for free. To make
More informationCS 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 informationMITOCW watch?v=zm5mw5nkzjg
MITOCW watch?v=zm5mw5nkzjg The following content is provided under a Creative Commons license. Your support will help MIT OpenCourseWare continue to offer high quality educational resources for free. To
More informationOn the Web sun.com/aboutsun/comm_invest STAROFFICE 8 DRAW
STAROFFICE 8 DRAW Graphics They say a picture is worth a thousand words. Pictures are often used along with our words for good reason. They help communicate our thoughts. They give extra information that
More information: Intro Programming for Scientists and Engineers Assignment 1: Turtle Graphics
Assignment 1: Turtle Graphics Page 1 600.112: Intro Programming for Scientists and Engineers Assignment 1: Turtle Graphics Peter H. Fröhlich phf@cs.jhu.edu Joanne Selinski joanne@cs.jhu.edu Due Date: Wednesdays
More informationSlide 1 CS 170 Java Programming 1
CS 170 Java Programming 1 Objects and Methods Performing Actions and Using Object Methods Slide 1 CS 170 Java Programming 1 Objects and Methods Duration: 00:01:14 Hi Folks. This is the CS 170, Java Programming
More informationCS Fall Homework 5 p. 1. CS Homework 5
CS 235 - Fall 2015 - Homework 5 p. 1 Deadline: CS 235 - Homework 5 Due by 11:59 pm on Wednesday, September 30, 2015. How to submit: Submit your files using ~st10/235submit on nrs-projects, with a homework
More informationCS 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 informationProblem Set 1 Due: 11:59pm Wednesday, February 7
CS251 Programming Languages Handout # 13 Prof. Lyn Turbak January 31, 2007 Wellesley College Reading: Problem Set 1 Due: 11:59pm Wednesday, February 7 Handouts #1 #12 (only Chapters 1 5 of Handout #9 =
More informationBe sure check the official clarification thread for corrections or updates to this document or to the distributed code.
Com S 228 Spring 2011 Programming Assignment 1 Part 1 (75 points): Due at 11:59 pm, Friday, January 28 Part 2 (225 points): Due at 11:59 pm, Monday, February 7 This assignment is to be done on your own.
More informationLab 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