DEMYSTIFYING PROGRAMMING: CHAPTER SIXTEEN ADD AND SEARCH AN ARRAY (TOC DETAILED)
|
|
- Jonah Harvey
- 6 years ago
- Views:
Transcription
1 DEMYSTIFYING PROGRAMMING: CHAPTER SIXTEEN ADD AND SEARCH AN ARRAY (TOC DETAILED) Chapter Sixteen: Add and Search an Array... 1 Objectives Design and Implementation... 1 An Array-based List can include any class... 1 Add and Search an Array-based List Add... 1 Inline Exercise: Search... 2 Inline Exercise:... 3 Comparing Objects... 3 Inline Exercise:... 4 Challenge: Patterns... 4 The add pattern... 4 The search pattern Exercises... 4 Design Exercises... 4 Complete the Code Exercises... 4 Code to Mend... 5 Code Exercises... 5 Index... 5
2 Chapter Sixteen: Add and Search an Array Objectives Can a List contain class objects? How are elements of an array ordered? How can an element be found in an array? 16.1 Design and Implementation An Array-based List can include any class An array is a collection of homogeneous elements in a linear order. An array may be a collection of integers, names, or even dogs. The class Dog includes three data items (name, breed, and age). Therefore, an array of Dog class elements would include at position 0 three pieces of information (a name, a breed, and an age). These three items are a single element of Dog class stored in a single position of the array. To declare an array of Dog type is as easy as declaring it for any other type. The following declares, instantiates, and stores a new Dog object in an array of Dog type. Dog[] mydogs; mydogs = new Dog[10]; mydogs[0] = Dog( Fido, Labrador, 4); Add and Search an Array-based List It is becoming clear that although there are many similarities between a List as a data structure and an array as a language structure, the two are not identical. A List is responsible for keeping track of its top and its end point. A List cannot allow any gaps in its list. When a List is supported with an array, the array may have several empty positions until its capacity is full Add Keeping track of the top of the array-based List is easy. The top of a List is the 0 th position of the array. However, the bottom of the List will not be the length of the array unless the array is full. So the programmer must add a variable to track the count of items on the list. This count is the number of items on the list and points to the next available position in the array for adding to the list. Adding to the list means adding to the position indicated by the count variable and incrementing it. In this way count indicates first where to place the next item and after incrementation shows the new count or correct number of items on the list. To code this solution using an array requires the creating of an empty array and a variable initialized to zero, count. The example NameList.java illustrates this process. Study NameList.java for more details. Demystifying Programming Search, Remove, Sort Page 1
3 Figure 1: NameList.java Add method The method addone gets the user s information from the textfield and assigns it to the next available position in the array-based List, increments the counter, and clears the user s typing from the textfield. Inline Exercise: Copy TestDog.java from CH15 to a CH16 folder and create an array of Dog type in TestDog.java. Add and initialize a counter to 0. In the actionperformed, create a new Dog using information provided by the user. Place this new dog at position counter and increment the counter. When show is pressed use a for-loop to show the entire array. Since an additional Show button and method will be necessary, add a new JPanel for buttons and the btnshow and showall method. Theoretically, a List can contain and infinite number of items. In practice, every list has some limit on the number of items it can contain because of its implementation. In an array-based list, the size of the list is limited to the length of the array. The length of the array is provided at the time the array is instantiated. In NameList, the namelist array is an instance of length 10. Therefore, no more than ten items can be placed on the list. What happens if the user attempts to place more than ten items on the list? Experiment and find out. Notice the command prompt (black box) under your applet if you are running code in Appletviewer/Textpad. To prevent this error from occurring the programmer must verify that count is not greater than length BEFORE attempting to add a new element. The most efficient time to make this test is immediately before calling addone in the event handler. Figure 2: namelist is full 16.3 Search After adding a few more names to namelist it is time to search the name list for a specific key (name). Which name should be searched for? That is a choice we want the user to make through a textfield. Once we have the key item to search for, beginning at the top search one item at a time until a match is found or the search reaches the count. If the search reaches the count, the item was not found. Moving through the List from top to bottom is called iteration. Iteration is easy with an array-based list. The showall method of NameList already does this iteration. Figure 3: Iteration with showall (NameList.java) Demystifying Programming Search, Remove, Sort Page 2
4 Observe this linear search in NameList.java. Figure 4: Linear search in NameList.java 1. The search method must first have a key as the goal of the search. 2. It must have a mechanism for iterating through the array. 3. It must compare the key to the current item of the array. 4. It must signal the position at which the item was found or not. 1. The key is gained on line Iteration uses the for-loop on line Matching is done with if condition on line The return statements signal position or failure (-1). Most of this process is familiar from programming previously done. Step 3, although it may look strange, is familiar too. To compare int or float type use the comparative operator = = (double equals). To compare two Strings, the comparative operator equals is used on line 91. The operator is dotted to the first String, and the second String is placed in the operator s parentheses. Other String operators are available, but this one servers our purpose. If an identical match is found, the position of the matching item is immediately returned and the search terminates. If the iterator moves through the entire list without finding a match, the loop-terminates and the return of -1 signals failure. This linear search termination method assumes no duplicates will be in the list. Search returns either -1 for failure or an integer greater than -1 as the position at which the key is located. How can this return value be used? What a programmer does with this returned position or failure integer is a matter of choice. The code in NameList.java stores the returned int as position and displays relevant information in the textarea. Figure 5: btnfind from actionperformed of NameList.java Inline Exercise: Copy Sales.java from chapter 10 and modify it so that it has a JPanel for buttons and a btnfind. Add a search method. The comparative operator for numbers is not.equals( ). Comparing Objects When an object represents a complex cluster of information, the programmer must make a decision regarding which attribute should be compared. The Dog class used earlier included attributes for name, breed, and age. When search through a list of Dog objects, it is necessary to decide which attribute should be compared. If the programmer wishes to search by name, the getname method will be used in the comparison. If a search by breed is required, the getbreed method will be used in the comparison. If searching by name the txtname.gettext method captures the name, and it is stored in String key. To compare this key with the name attribute of the Dog object stored at each location the Dog s method getname will be required. Demystifying Programming Search, Remove, Sort Page 3
5 if(doglist[x].getname().equals(key)) The equals String operator is used to compare two Strings. The Dog getname method returns a String, the name of the dog object located at the current x. In database theory a primary key is used to distinquish each tuple (row or object) from every other. If your object includes an attribute or field that serves as primary key, compare on the basis of this unique attribute. This discussion assumes that the list contains no duplicate entries. What will happen if the list contains duplicates? Inline Exercise: Use TestDog.java from the previous Inline exercise. Add a button for search and a search method. This method will use getname to match the key. Since name is a String, this will require the String comparative operation, equals. Challenge: Save TestDog.java as TestDogBreed.java. Add a second button and search method to search by breed Patterns The add pattern doglist[count] = new Dog(name, breed, age); count++; 1. create new item 2. store at count position 3. increment count The search pattern String key = txtname.gettext(); for(int x=top; x<count; x++){ if(doglist[x].getname().equals(key)) return x; } return -1; } 1. establish key 2. step through array 3. match item to key 4. if found return position 5. if not found return Exercises Design Exercises 1. Design a class called Inventory which will include ID, Name, OnHand as count of those in items in inventory. This class should have the appropriate constructor and observer methods. Also add a method to transform the OnHand value. 2. Design a class called WareHouse which will allow users to create new Inventory items. This is a GUI class and provides buttons for Add, Show, and Sort. Complete the Code Exercises 3. Modify the WareHouse.java file to include the ability to add a new inventory item. 4. Modify the WareHouse.java file to include a showall method. Demystifying Programming Search, Remove, Sort Page 4
6 Code to Mend 5. The file TownList.java is missing several code segments. The statements //missing code indicates where they should be. Please mend this code and test it. Code Exercises 6. If you have a course project to which these methods could be applied, do it. If you need to create a small project to which to apply these methods, do it. Index actionperformed...2, 3 add...1, 2, 4 array...1, 2, 3 attribute...3 attributes...3 condition...3 constructor...4 counter...2 data structure...1 decision...3 declare...1 double...3 element...1, 2 elements...1 equals...3, 4 event...2 event handler...2 float...3 for-loop...2, 3 gettext... 3 GUI... 4 initialize... 2 int 3 iterator... 3 JPanel... 2, 3 length... 1, 2 List... 1, 2 loop... 3 methods... 4, 5 new...1, 2, 4 observer... 4 parentheses... 3 process... 1, 3 return... 3 search...2, 3, 4 String... 3, 4 variable... 1 Demystifying Programming Search, Remove, Sort Page 5
DEMYSTIFYING PROGRAMMING: CHAPTER FOUR
DEMYSTIFYING PROGRAMMING: CHAPTER FOUR Chapter Four: ACTION EVENT MODEL 1 Objectives 1 4.1 Additional GUI components 1 JLabel 1 JTextField 1 4.2 Inductive Pause 1 4.4 Events and Interaction 3 Establish
More informationDEMYSTIFYING PROGRAMMING: CHAPTER SIX METHODS (TOC DETAILED) CHAPTER SIX: METHODS 1
DEMYSTIFYING PROGRAMMING: CHAPTER SIX METHODS (TOC DETAILED) CHAPTER SIX: METHODS 1 Objectives 1 6.1 Methods 1 void or return 1 Parameters 1 Invocation 1 Pass by value 1 6.2 GUI 2 JButton 2 6.3 Patterns
More informationDEMYSTIFYING PROGRAMMING: CHAPTER TEN REPETITION WITH WHILE-LOOP (TOC DETAILED)
DEMYSTIFYING PROGRAMMING: CHAPTER TEN REPETITION WITH WHILE-LOOP (TOC DETAILED) Chapter Ten: Classes Revisited, Repetition with while... 1 Objectives... 1 10.1 Design... 1 Repetition process pseudocode...
More informationLAB 13: ARRAYS (ONE DIMINSION)
Statement Purpose: The purpose of this Lab. is to practically familiarize student with the concept of array and related operations performed on array. Activity Outcomes: As a second Lab on Chapter 7, this
More informationCS 61B Discussion Quiz 1. Questions
Name: SID: CS 61B Discussion Quiz 1 Write your name and SID above. Detach this page from your discussion handout, and turn it in when your TA instructs you to do so. These quizzes are used as attendance.
More informationRepetition Structures
Repetition Structures Chapter 5 Fall 2016, CSUS Introduction to Repetition Structures Chapter 5.1 1 Introduction to Repetition Structures A repetition structure causes a statement or set of statements
More informationCondition-Controlled Loop. Condition-Controlled Loop. If Statement. Various Forms. Conditional-Controlled Loop. Loop Caution.
Repetition Structures Introduction to Repetition Structures Chapter 5 Spring 2016, CSUS Chapter 5.1 Introduction to Repetition Structures The Problems with Duplicate Code A repetition structure causes
More informationUML IB Computer Science. Content developed by Dartford Grammar School Computer Science Department
UML IB Computer Science Content developed by Dartford Grammar School Computer Science Department HL Topics 1-7, D1-4 1: System design 2: Computer Organisation 3: Networks 4: Computational thinking 5: Abstract
More informationProblem Solving With Loops
To appreciate the value of loops, take a look at the following example. This program will calculate the average of 10 numbers input by the user. Without a loop, the three lines of code that prompt the
More informationMore Counting Sort and Sorting-by-Key
Tony Gong ITEE University of Queensland In the lectures last week we looked at the counting sort algorithm for sorting a set of integers that come from some specific domain, i.e. every integer is in some
More informationAssignment 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 informationAnnouncements. Lab Friday, 1-2:30 and 3-4:30 in Boot your laptop and start Forte, if you brought your laptop
Announcements Lab Friday, 1-2:30 and 3-4:30 in 26-152 Boot your laptop and start Forte, if you brought your laptop Create an empty file called Lecture4 and create an empty main() method in a class: 1.00
More informationNo previous knowledge of Java is required for this workshop.
SAS webaf for Java Application Development, a First Sip Mickey Waxman University of Kansas, Lawrence, Kansas Larry Hoyle University of Kansas, Lawrence, Kansas ABSTRACT SAS webaf is an integrated development
More informationIntroduction to the Java Basics: Control Flow Statements
Lesson 3: Introduction to the Java Basics: Control Flow Statements Repetition Structures THEORY Variable Assignment You can only assign a value to a variable that is consistent with the variable s declared
More informationCHAPTER 7 OBJECTS AND CLASSES
CHAPTER 7 OBJECTS AND CLASSES OBJECTIVES After completing Objects and Classes, you will be able to: Explain the use of classes in Java for representing structured data. Distinguish between objects and
More informationClasses, objects, references, encapsulation and whatnot
Boaz Kantor Introduction to Computer Science, Fall semester 2010-2011 IDC Herzliya Classes, objects, references, encapsulation and whatnot 1 Boaz Kantor, IDC Agenda Object state (4 to 6) Methods and parameters
More informationClasses, objects, references, encapsulation and whatnot
Boaz Kantor Introduction to Computer Science, Fall semester 2009-2010 IDC Herzliya Classes, objects, references, encapsulation and whatnot 1 Boaz Kantor, IDC Agenda Object state (4 to 6) Methods and parameters
More informationECE 122. Engineering Problem Solving with Java
ECE 122 Engineering Problem Solving with Java Lecture 10 For Loops and Arrays Outline Problem: How can I perform the same operations a fixed number of times? Considering for loops Performs same operations
More informationChapter 6: Using Arrays
Chapter 6: Using Arrays Declaring an Array and Assigning Values to Array Array Elements A list of data items that all have the same data type and the same name Each item is distinguished from the others
More informationMobile Computing Professor Pushpendra Singh Indraprastha Institute of Information Technology Delhi Java Basics Lecture 02
Mobile Computing Professor Pushpendra Singh Indraprastha Institute of Information Technology Delhi Java Basics Lecture 02 Hello, in this lecture we will learn about some fundamentals concepts of java.
More informationAn array is a type of variable that is able to hold more than one piece of information under a single variable name.
Arrays An array is a type of variable that is able to hold more than one piece of information under a single variable name. Basically you are sub-dividing a memory box into many numbered slots that can
More informationComputer Information Systems Classes and Functions Review Lab
Computer Information Systems Classes and Functions Review Lab Using the attached design, create a C++ console application that uses es. This assignment should not take an extended amount of time as the
More informationName: Checked: Learn about listeners, events, and simple animation for interactive graphical user interfaces.
Lab 15 Name: Checked: Objectives: Learn about listeners, events, and simple animation for interactive graphical user interfaces. Files: http://www.csc.villanova.edu/~map/1051/chap04/smilingface.java http://www.csc.villanova.edu/~map/1051/chap04/smilingfacepanel.java
More informationPrototyping a Swing Interface with the Netbeans IDE GUI Editor
Prototyping a Swing Interface with the Netbeans IDE GUI Editor Netbeans provides an environment for creating Java applications including a module for GUI design. Here we assume that we have some existing
More informationWeek 3 Classes and Objects
Week 3 Classes and Objects written by Alexandros Evangelidis, adapted from J. Gardiner et al. 13 October 2015 1 Last Week Last week, we looked at some of the different types available in Java, and the
More informationJava How to Program, 10/e. Copyright by Pearson Education, Inc. All Rights Reserved.
Java How to Program, 10/e Education, Inc. All Rights Reserved. Each class you create becomes a new type that can be used to declare variables and create objects. You can declare new classes as needed;
More information(a) Write the signature (visibility, name, parameters, types) of the method(s) required
1. (6 pts) Is the final comprehensive? 1 2. (6 pts) Java has interfaces Comparable and Comparator. As discussed in class, what is the main advantage of Comparator? 3. (6 pts) We can use a comparator in
More informationn Group of statements that are executed repeatedly while some condition remains true
Looping 1 Loops n Group of statements that are executed repeatedly while some condition remains true n Each execution of the group of statements is called an iteration of the loop 2 Example counter 1,
More informationName Section: M/W T/TH Number Definition Matching (6 Points)
Name Section: M/W T/TH Number Definition Matching (6 Points) 1. (6 pts) Match the words with their definitions. Choose the best definition for each word. Event Counter Iteration Counter Loop Flow of Control
More informationCourse Outline. Introduction to java
Course Outline 1. Introduction to OO programming 2. Language Basics Syntax and Semantics 3. Algorithms, stepwise refinements. 4. Quiz/Assignment ( 5. Repetitions (for loops) 6. Writing simple classes 7.
More informationProgramming for Non-Programmers
Programming for Non-Programmers Python Chapter 2 Source: Dilbert Agenda 6:00pm Lesson Begins 6:15pm First Pillow example up and running 6:30pm First class built 6:45pm Food & Challenge Problem 7:15pm Wrap
More informationCHAPTER 7 OBJECTS AND CLASSES
CHAPTER 7 OBJECTS AND CLASSES OBJECTIVES After completing Objects and Classes, you will be able to: Explain the use of classes in Java for representing structured data. Distinguish between objects and
More informationName Section: M/W T/TH Number Definition Matching (8 Points)
Name Section: M/W T/TH Number Definition Matching (8 Points) 1. (8 pts) Match the words with their definitions. Choose the best definition for each word. Iteration Counter Event Counter Loop Abstract Step
More informationJava Primer 1: Types, Classes and Operators
Java Primer 1 3/18/14 Presentation for use with the textbook Data Structures and Algorithms in Java, 6th edition, by M. T. Goodrich, R. Tamassia, and M. H. Goldwasser, Wiley, 2014 Java Primer 1: Types,
More informationLesson 06 Arrays. MIT 11053, Fundamentals of Programming By: S. Sabraz Nawaz Senior Lecturer in MIT Department of MIT FMC, SEUSL
Lesson 06 Arrays MIT 11053, Fundamentals of Programming By: S. Sabraz Nawaz Senior Lecturer in MIT Department of MIT FMC, SEUSL Array An array is a group of variables (called elements or components) containing
More information(Refer Slide Time: 00:26)
Programming, Data Structures and Algorithms Prof. Shankar Balachandran Department of Computer Science and Engineering Indian Institute Technology, Madras Module 07 Lecture 07 Contents Repetitive statements
More informationClass C{ int a; } what variables below are objects : a. C c; b. String str; c. Scanner scanner; d. int num; e. float f;
Class C{ int a; } what variables below are objects : a. C c; b. String str; c. Scanner scanner; d. int num; e. float f; Starting Out with Java: From Control Structures Through Objects Sixth Edition Chapter
More informationObject-Oriented Programming
Objects and Classes Object-Oriented Programming Outline Classes vs. objects Designing a class Methods and instance variables Encapsulation & information hiding Readings: HFJ: Ch. 2, 3, 4. GT: Ch. 3, 4.
More informationCPSC 211 MIDTERM PRACTICE EXERCISES
CPSC 211 MIDTERM PRACTICE EXERCISES Note: These questions are intended to help you practice and review the course material. Do not consider these questions as typical midterm questions; in particular,
More informationSINGLE EVENT HANDLING
SINGLE EVENT HANDLING Event handling is the process of responding to asynchronous events as they occur during the program run. An event is an action that occurs externally to your program and to which
More informationAll copyrights reserved - KV NAD, Aluva. Dinesh Kumar Ram PGT(CS) KV NAD Aluva
All copyrights reserved - KV NAD, Aluva Dinesh Kumar Ram PGT(CS) KV NAD Aluva Overview Looping Introduction While loops Syntax Examples Points to Observe Infinite Loops Examples using while loops do..
More informationCMSC 201 Computer Science I for Majors
CMSC 201 Computer Science I for Majors Lecture 02 Intro to Python Syllabus Last Class We Covered Grading scheme Academic Integrity Policy (Collaboration Policy) Getting Help Office hours Programming Mindset
More informationC++ Classes & Object Oriented Programming
C++ Classes & Object Oriented Programming What is it? Object Oriented Programming 1 Object Oriented Programming One of the first applications of modern computing was modeling and simulation. Scientists
More informationREPETITION CONTROL STRUCTURE LOGO
CSC 128: FUNDAMENTALS OF COMPUTER PROBLEM SOLVING REPETITION CONTROL STRUCTURE 1 Contents 1 Introduction 2 for loop 3 while loop 4 do while loop 2 Introduction It is used when a statement or a block of
More informationJava 1.8 Programming
One Introduction to Java 2 Usage of Java 3 Structure of Java 4 Flexibility of Java Programming 5 Two Running Java in Dos 6 Using the DOS Window 7 DOS Operating System Commands 8 Compiling and Executing
More informationintroduction to Programming in C Department of Computer Science and Engineering Lecture No. #40 Recursion Linear Recursion
introduction to Programming in C Department of Computer Science and Engineering Lecture No. #40 Recursion Linear Recursion Today s video will talk about an important concept in computer science which is
More informationJava Review. Fundamentals of Computer Science
Java Review Fundamentals of Computer Science Link to Head First pdf File https://zimslifeintcs.files.wordpress.com/2011/12/h ead-first-java-2nd-edition.pdf Outline Data Types Arrays Boolean Expressions
More informationProgramming Paradigms Written Exam
Programming Paradigms Written Exam 17.06.2014 First name Student number Last name Signature Instructions for Students Write your name and student number on the exam sheet and on every solution sheet you
More informationIntroduction. chapter Functions
chapter 1 Introduction In this chapter we set the stage for the rest of the book. We start by reviewing the notion of a function, then introduce the concept of functional programming, summarise the main
More information2.13. Worst-Case Linear Time Selection
2.13. Worst-Case Linear Time Selection Section authors: Sergej Roytman. Geoff Greene, Seyit Camtepe, Armand Cistaro, and Divide & Conquer 1.5 Selection Divide & Conquer Selection Linear-Time Selection
More informationName SECTION: 12:45 2:20. True or False (12 Points)
Name SECION: 12:45 2:20 rue or False (12 Points) 1. (12 pts) Circle for true and F for false: F a) Local identifiers have name precedence over global identifiers of the same name. F b) Local variables
More informationV3 1/3/2015. Programming in C. Example 1. Example Ch 05 A 1. What if we want to process three different pairs of integers?
Programming in C 1 Example 1 What if we want to process three different pairs of integers? 2 Example 2 One solution is to copy and paste the necessary lines of code. Consider the following modification:
More informationPython: common syntax
Lab 09 Python! Python Intro Main Differences from C++: True and False are capitals Python floors (always down) with int division (matters with negatives): -3 / 2 = -2 No variable data types or variable
More informationObject-Oriented Programming Classes, Objects, Variables
Object-Oriented Programming Classes, Objects, Variables Ewan Klein School of Informatics Inf1 :: 2009/10 Ewan Klein (School of Informatics) Object-Oriented ProgrammingClasses, Objects, Variables Inf1 ::
More informationUSING DATA TO SET MACRO PARAMETERS
USING DATA TO SET MACRO PARAMETERS UPDATE A PREVIOUS EXAMPLE %macro report(regs=); %let r=1; %let region=%scan(®s,&r); %do %until(®ion eq ); options nodate pageno=1; ods pdf file="®ion..pdf";
More informationBinary Search. Roland Backhouse February 5th, 2001
1 Binary Search Roland Backhouse February 5th, 2001 Outline 2 An implementation in Java of the card-searching algorithm is presented. Issues concerning the correctness of the implementation are raised
More informationThis exam is closed textbook(s) and closed notes. Use of any electronic device (e.g., for computing and/or communicating) is NOT permitted.
York University AS/AK/ITEC 2610 3.0 All Sections OBJECT-ORIENTED PROGRAMMING Midterm Test Duration: 90 Minutes This exam is closed textbook(s) and closed notes. Use of any electronic device (e.g., for
More informationLecture 21. Chapter 12 More Python Containers
Lecture 21 Chapter 12 More Python Containers 12.1 Two Familiar Containers: list and tuple 12.2 Dictionaries 12.3 Containers of containers 12.4 Set and Frozenset 12.5 Arrays Chapter 12 More Python Containers
More informationJava Programming with Eclipse
One Introduction to Java 2 Usage of Java 3 Structure of Java 4 Flexibility of Java Programming 5 Using the Eclipse Software 6 Two Running Java in Eclipse 7 Introduction 8 Using Eclipse 9 Workspace Launcher
More informationCPSC 211 MIDTERM PRACTICE EXERCISES
CPSC 211 MIDTERM PRACTICE EXERCISES Note: These questions are intended to help you practice and review the course material. Do not consider these questions as typical midterm questions; in particular,
More informationCS302 Data Structures using C++
CS302 Data Structures using C++ Study Guide for the Final Exam Fall 2018 Revision 1.1 This document serves to help you prepare towards the final exam for the Fall 2018 semester. 1. What topics are to be
More informationReviewing for the Midterm Covers chapters 1 to 5, 7 to 9. Instructor: Scott Kristjanson CMPT 125/125 SFU Burnaby, Fall 2013
Reviewing for the Midterm Covers chapters 1 to 5, 7 to 9 Instructor: Scott Kristjanson CMPT 125/125 SFU Burnaby, Fall 2013 2 Things to Review Review the Class Slides: Key Things to Take Away Do you understand
More informationC++ Programming Lecture 7 Control Structure I (Repetition) Part I
C++ Programming Lecture 7 Control Structure I (Repetition) Part I By Ghada Al-Mashaqbeh The Hashemite University Computer Engineering Department while Repetition Structure I Repetition structure Programmer
More informationLists. Michael P. Fourman. February 2, 2010
Lists Michael P. Fourman February 2, 2010 1 Introduction The list is a fundamental datatype in most functional languages. ML is no exception; list is a built-in ML type constructor. However, to introduce
More information[Page 177 (continued)] a. if ( age >= 65 ); cout << "Age is greater than or equal to 65" << endl; else cout << "Age is less than 65 << endl";
Page 1 of 10 [Page 177 (continued)] Exercises 4.11 Identify and correct the error(s) in each of the following: a. if ( age >= 65 ); cout
More informationOverview CSE 142. Naming Revisited Declarations. Defining Parts of Objects
ÿþýûú Overview CSE 142 Anatomy of an object: constructors, methods, and instance variables Quick Review Creating, naming, and using objects Creating (empty) classes and instances of them Today Details
More informationLab 09: Advanced SQL
CIS395 - BMCC - Spring 2018 04/25/2018 Lab 09: Advanced SQL A - Use Simple Loops with EXIT Conditions In this exercise, you use the EXIT condition to terminate a simple loop, and a special variable, v_counter,
More informationCollections, Maps and Generics
Collections API Collections, Maps and Generics You've already used ArrayList for exercises from the previous semester, but ArrayList is just one part of much larger Collections API that Java provides.
More informationThe class definition is not a program by itself. It can be used by other programs in order to create objects and use them.
Data Classes and Object-Oriented Programming Data classes can be motivated by the need to create data structures that have grouped together a number of variables of simpler type (ints, Strings, arrays)
More informationLesson 10A OOP Fundamentals. By John B. Owen All rights reserved 2011, revised 2014
Lesson 10A OOP Fundamentals By John B. Owen All rights reserved 2011, revised 2014 Table of Contents Objectives Definition Pointers vs containers Object vs primitives Constructors Methods Object class
More informationData types. CISC 1600/1610 Computer Science I. Class dog. Introducing: classes. Class syntax declaration. Class syntax function definitions 12/2/2015
CISC 1600/1610 Computer Science I Classes Professor Daniel Leeds dleeds@fordham.edu JMH 328A Data types Single pieces of information one integer int one symbol char one truth value bool Multiple pieces
More informationCPE 112 Spring 2015 Exam III (100 pts) April 8, True or False (12 Points)
Name rue or False (12 Points) 1. (12 pts) Circle for true and F for false: F a) Local identifiers have name precedence over global identifiers of the same name. F b) Local variables retain their value
More informationDept. of CSE, IIT KGP
Control Flow: Looping CS10001: Programming & Data Structures Pallab Dasgupta Professor, Dept. of Computer Sc. & Engg., Indian Institute of Technology Kharagpur Types of Repeated Execution Loop: Group of
More informationCONTENTS. Chapter 1 Getting Started with Java SE 6 1. Chapter 2 Exploring Variables, Data Types, Operators and Arrays 13
CONTENTS Chapter 1 Getting Started with Java SE 6 1 Introduction of Java SE 6... 3 Desktop Improvements... 3 Core Improvements... 4 Getting and Installing Java... 5 A Simple Java Program... 10 Compiling
More informationCSE 142 Su 04 Computer Programming 1 - Java. Objects
Objects Objects have state and behavior. State is maintained in instance variables which live as long as the object does. Behavior is implemented in methods, which can be called by other objects to request
More informationIndex. Animation. factors, 186. Abstract Window Toolkit (AWT), 111. frame rate, 185. Access modifiers. multiple objects. package-private, 27
Index A Abstract Window Toolkit (AWT), 111 Access modifiers package-private, 27 private, 27 protected, 27 public, 27 Additive operators, 57 58 Animal classes animals speak, 106 Carnivore interface, 105
More information2.1 Sets 2.2 Set Operations
CSC2510 Theoretical Foundations of Computer Science 2.1 Sets 2.2 Set Operations Introduction to Set Theory A set is a structure, representing an unordered collection (group, plurality) of zero or more
More informationASSIGNMENT 4. COMP-202C, Summer Due: Monday June 29th, 2015 (23:30)
ASSIGNMENT 4 COMP-202C, Summer 2015 Due: Monday June 29th, 2015 (23:30) Please read the entire pdf before starting. You must do this assignment individually and, unless otherwise specified, you must follow
More informationCS 1302 Chapter 9 (Review) Object & Classes
CS 1302 Chapter 9 (Review) Object & Classes Reference Sections 9.2-9.5, 9.7-9.14 9.2 Defining Classes for Objects 1. A class is a blueprint (or template) for creating objects. A class defines the state
More informationINTRODUCTION TO FORTRAN PART II
INTRODUCTION TO FORTRAN PART II Prasenjit Ghosh An example: The Fibonacci Sequence The Fibonacci sequence consists of an infinite set of integer nos. which satisfy the following recurrence relation x n
More informationAPCS Semester #1 Final Exam Practice Problems
Name: Date: Per: AP Computer Science, Mr. Ferraro APCS Semester #1 Final Exam Practice Problems The problems here are to get you thinking about topics we ve visited thus far in preparation for the semester
More informationJava - Applets. C&G criteria: 1.2.2, 1.2.3, 1.2.4, 1.3.4, 1.2.4, 1.3.4, 1.3.5, 2.2.5, 2.4.5, 5.1.2, 5.2.1,
Java - Applets C&G criteria: 1.2.2, 1.2.3, 1.2.4, 1.3.4, 1.2.4, 1.3.4, 1.3.5, 2.2.5, 2.4.5, 5.1.2, 5.2.1, 5.3.2. Java is not confined to a DOS environment. It can run with buttons and boxes in a Windows
More informationPhysics 306 Computing Lab 1: Hello, World!
1. Introduction Physics 306 Computing Lab 1: Hello, World! In today s lab, you will learn how to write simple programs, to compile them, and to run them. You will learn about input and output, variables,
More informationLecture 3: Working with Data Structures
Lecture 3: Working with Data Structures Data Structures and Algorithms CSE 373 SP 18 - KASEY CHAMPION 1 Warm Up From last lecture: - What is an example of constant time complexity - What is an example
More informationWhy Is Repetition Needed?
Why Is Repetition Needed? Repetition allows efficient use of variables. It lets you process many values using a small number of variables. For example, to add five numbers: Inefficient way: Declare a variable
More informationDCS235 Software Engineering Exercise Sheet 2: Introducing GUI Programming
Prerequisites Aims DCS235 Software Engineering Exercise Sheet 2: Introducing GUI Programming Version 1.1, October 2003 You should be familiar with the basic Java, including the use of classes. The luej
More informationCOMP 250 Fall inheritance Nov. 17, 2017
Inheritance In our daily lives, we classify the many things around us. The world has objects like dogs and cars and food and we are familiar with talking about these objects as classes Dogs are animals
More informationWill introduce various operators supported by C language Identify supported operations Present some of terms characterizing operators
Operators Overview Will introduce various operators supported by C language Identify supported operations Present some of terms characterizing operators Operands and Operators Mathematical or logical relationships
More informationCS 180 Final Exam Review 12/(11, 12)/08
CS 180 Final Exam Review 12/(11, 12)/08 Announcements Final Exam Thursday, 18 th December, 10:20 am 12:20 pm in PHYS 112 Format 30 multiple choice questions 5 programming questions More stress on topics
More informationAssoc. Prof. Dr. Marenglen Biba. (C) 2010 Pearson Education, Inc. All rights reserved.
Assoc. Prof. Dr. Marenglen Biba (C) 2010 Pearson Education, Inc. All for repetition statement do while repetition statement switch multiple-selection statement break statement continue statement Logical
More informationECE 122. Engineering Problem Solving with Java
ECE 122 Engineering Problem Solving with Java Lecture 4 Creating and Using Objects Outline Problem: How do I create multiple objects from a class Java provides a number of built-in classes for us Understanding
More informationECE 122. Engineering Problem Solving with Java
ECE 122 Engineering Problem Solving with Java Lecture 4 Creating and Using Objects Outline Problem: How do I create multiple objects from a class Java provides a number of built-in classes for us Understanding
More informationData Structures. Data structures. Data structures. What is a data structure? Simple answer: a collection of data equipped with some operations.
Data Structures 1 Data structures What is a data structure? Simple answer: a collection of data equipped with some operations. Examples Lists Strings... 2 Data structures In this course, we will learn
More informationObjective-C Part 2 (ECS189H) Ken Joy Serban Porumbescu
Objective-C Part 2 (ECS189H) Ken Joy joy@cs.ucdavis.edu Serban Porumbescu porumbes@cs.ucdavis.edu Today Objective-C Memory Management Properties Categories and Protocols Delegates Objective-C Memory Management
More informationHaskell Overview II (2A) Young Won Lim 9/26/16
(2A) Copyright (c) 2016 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published
More informationChapter 9 Introduction to Arrays. Fundamentals of Java
Chapter 9 Introduction to Arrays Objectives Write programs that handle collections of similar items. Declare array variables and instantiate array objects. Manipulate arrays with loops, including the enhanced
More informationLecture 3: Queues, Testing, and Working with Code
Lecture 3: Queues, Testing, and Working with Code Data Structures and Algorithms CSE 373 SU 18 BEN JONES 1 Clearing up Stacks CSE 373 SU 18 BEN JONES 2 Clearing up Stacks CSE 373 SU 18 BEN JONES 3 Clearing
More informationLecture Transcript While and Do While Statements in C++
Lecture Transcript While and Do While Statements in C++ Hello and welcome back. In this lecture we are going to look at the while and do...while iteration statements in C++. Here is a quick recap of some
More informationGeoff Greene, Seyit Camtepe, Armand Cistaro, and Sergej
.6. Worst-Case Linear Time Selection Section authors: Roytman. Geoff Greene, Seyit Camtepe, Armand Cistaro, and Sergej Divide & Conquer.5 Selection Divide & Conquer Selection Linear-Time Selection Refinement
More informationWeek Chapter Assignment SD Technology Standards. 1,2, Review Knowledge Check JP3.1. Program 5.1. Program 5.1. Program 5.2. Program 5.2. Program 5.
Week Chapter Assignment SD Technology Standards 1,2, Review JP3.1 Review exercises Debugging Exercises 3,4 Arrays, loops and layout managers. (5) Create and implement an external class Write code to create
More information