CI228 CI228 Tutorials

Size: px
Start display at page:

Download "CI228 CI228 Tutorials"

Transcription

1 CI228 M A Smith University of Brighton September 13, 2016 Page 1

2 BIO - Basic Input Output Input of an integer number The static method BIO.getInt() will read from the keyboard an integer number typed by the user. This value must be assigned to a variable of type int. int idays = BIO.getInt(); //Whole number Will input into the variable idays an integer number typed by the user. A program in Java to input a number of days and calculate the number of weeks and days this represents. class Main { public static void main( String args[] ) { System.out.print( "#Input number of days " ); int idays = BIO.getInt(); System.out.print( idays ); System.out.print( " days is equal to " ); int weeks = idays / 7; System.out.print( weeks ); System.out.print( " week(s) " ); int days = idays % 7; System.out.print( days ); System.out.println( " day(s) " ); } } //Number of weeks //Remaining days #Input number of days days is equal to 1 week(s) 3 day(s) M A Smith University of Brighton September 13, 2016 Page 2

3 The Charon system will ignore any line in your output that contains a #. Hence you can output any line (containing a # ) and it will be ignored when Charon compares your answer with the expected answer. The class BIO is automatically included when you use BlueJ or submit a program to Charon. If you want to use this at home then you need to include the code for the class BIO (see programs on web site) in your program. M A Smith University of Brighton September 13, 2016 Page 3

4 Summary of BIO Static method call BIO.getInt() BIO.getDouble() BIO.getString() BIO.eof() Description Read a line and return as an int the number that is contained within the line. If the number is malformed then return 0. Read a line and return as a double the number that is contained within the line. If the number is malformed then return 0.0. Read a line and return as an instance of a String the characters that are contained within the line. Any leading or trailing white space characters will be preserved. Returns true if the end of the input has been reached otherwise false. If during a read operation an attempt is made to read past the end of input (EOF) normally a warning message will be printed and the program will terminate. M A Smith University of Brighton September 13, 2016 Page 4

5 Week #1 Tutorial Room Using an IDE This tutorial is all about completing exercise 1.1 & 1.2 using an IDE Integrated Development Environment. Preparation You need to work out on paper your Java solutions to coursework exercises 1.1 & 1.2. These exercises are to get you back into program construction as well as an introduction to the Charon system if you have not yet used this (Direct entrants) If you are a direct entrant to Level 5, then do ask for help, if you are unsure about any of this work. At the tutorial use an IDE to develop your programs before submitting the answer to the Charon system. The IDE Eclipse is more advanced than BlueJ and will give you many new features to manipulate your Java code. It would be good to become familiar with Eclipse during your study of CI228. Remember when using Eclipse, you will need to create a class Main for the program and a class BIO for the code of the Basic Input and Output methods. The code for BIO is available on line in the programs for week 1. M A Smith University of Brighton September 13, 2016 Page 5

6 Week #2 Tutorial Room If you are not sure about inheritance do ask at the tutorial. Start to look at what is required for exercise 1.3. Sketch out an outline on paper what the class AccountBetter1 will contain. When you implement an interface it is simply a promise to provide that method in the class together with its body that you have to write. The reason for using the interface Transfer is to guarantor that the class AccountBetter1 will provide an implementation for the methods transferfrom and transferto. AccountBetter1 extends Account implements transfer Try out your code for AccountBetter1 using the test program in the on-line notes. (Under programs at the end of the web page) M A Smith University of Brighton September 13, 2016 Page 6

7 Week #3 Tutorial Room This tutorial is all about exercises 1.3, 1.4 & 1.5 using an Integrated Development Environment. You should make sure that you are clear about inheritance and the use of interfaces in Java. Exercises 1.3 is an example of the use of inheritance and the use of an interface. Interfaces are covered in detail in lecture 3. Classes/ Interfaces that need to be used: Main Note the test program provided, writes out the result of calling methods in the class that you write. Charon will check that these are the correct result of calling these methods. Account AccountBetter1 Transfer (See c/w description for code) The class that you will create by inheriting from the class Account & implementing the methods in the interface Transfer, An interface that AccountBetter1 implements. (See c/w description for code) M A Smith University of Brighton September 13, 2016 Page 7

8 Exercises 1.4 is a example of the use of inheritance and the use of an interface. Classes/ Interfaces that need to be used: Main Note the test program provided, writes out the result of calling methods in the class that you write. Charon will check that these are the correct result of calling these methods. Account AccountBetter1 AccountBetter2 Transfer Interest (See c/w description for code) The class that you created by inheriting from the class Account in exercise 1.3 The class that you construct for this part of the coursework. This class inherits from the class AccountBetter1 that you created for exercise 2.1. An interface that AccountBetter1 implements. (See c/w description for code) An interface that AccountBetter2 implements. (See c/w description for code) M A Smith University of Brighton September 13, 2016 Page 8

9 Exercises 1.5 is an example of the use of overriding an existing method when inheriting. Classes/ Interfaces that need to be used: Main Note the test program provided, writes out the result of calling methods in the class that you write. Charon will check that these are the correct result of calling these methods. Account AccountBetter1 AccountBetter2 StudentAccount Transfer Interest (See c/w description for code) The class that you created by inheriting from the class Account. The class that you created by inheriting from the class AccountBetter1. The class that you construct for this part of the coursework. This class inherits from the class AccountBetter2 that you created for exercise 1.4 An interface that AccountBetter1 implements. (See c/w description for code) An interface that AccountBetter2 implements. (See c/w description for code) M A Smith University of Brighton September 13, 2016 Page 9

10 Week #4 Tutorial Room Sorting out those last problems with exercises 1.4 & 1.5 Making sure that you understand the description of the CatShop in this week 4's notes. Make sure that you can compile and run the CatShop system. Important you will need to set up the Derby DataBase. See the course notes for CI228 for how to do this. Make sure that you understand what is required for coursework 2.1 & 2.2. M A Smith University of Brighton September 13, 2016 Page 10

11 Week #5 Tutorial Room The Catalogue shop Working on exercise 2.1 and making sure that you understand how to incorporate BetterBasket into the Catshop system. Classes that you need for 2.1: Basket Product The code for this class in the CatShop system in the package catalogue. The code for this class in the CatShop system in the package catalogue. BetterBasket The class that you will create by inheriting from Basket. Put this in the package catalogue. The first line of the class should be: 'package catalogue'. Important The code for Basket, BetterBasket and Product show that they belong to the package catalogue. If you are testing your classes in isolation then you will need to take account of this in any testing. M A Smith University of Brighton September 13, 2016 Page 11

12 Week #6 Reading week / Catchup week A chance to catch up or read ahead. No tutorial this week. Information correct at time of printing. However, do check for any last minute changes. M A Smith University of Brighton September 13, 2016 Page 12

13 Week #7 Tutorial Room The Catalogue shop Completing exercise 2.1 Compleating your critique of your work. Thinking about the extension you will implement to the CatShop system. Discuss this with your tutor in the tutorial group. M A Smith University of Brighton September 13, 2016 Page 13

14 Week #8 Tutorial Room The Catalogue shop Working on your extension to the CatShop system. Working on your critique of your work. Prelimary reserach on your report. M A Smith University of Brighton September 13, 2016 Page 14

15 Week #9 Tutorial Room The Catalogue shop Planning your report. You may wish to run through your ideas with your tutor in the tutorial. M A Smith University of Brighton September 13, 2016 Page 15

16 Week #10 Tutorial Room The Catalogue shop Complete a draft of your report. You may wish to run through your ideas with your tutor in the tutorial. M A Smith University of Brighton September 13, 2016 Page 16

17 Week #11 Tutorial Room The Catalogue shop Resolving any issues with your coursework. Finishing the extension to the CatShop system. Final polishing of your report. M A Smith University of Brighton September 13, 2016 Page 17

18 Week #12 Tutorial Room Demonstration of the CatShop program M A Smith University of Brighton September 13, 2016 Page 18

Introduction to the coursework for CI228

Introduction to the coursework for CI228 Introduction to the coursework for CI228 It is very unlikely that you would be able to complete this coursework without attending lectures and tutorials and following the suggested completion deadlines.

More information

Do this by creating on the m: drive (Accessed via start menu link Computer [The m: drive has your login id as name]) the subdirectory CI101.

Do this by creating on the m: drive (Accessed via start menu link Computer [The m: drive has your login id as name]) the subdirectory CI101. Creating and running a Java program. This tutorial is an introduction to running a computer program written in the computer programming language Java using the BlueJ IDE (Integrated Development Environment).

More information

This is a copy of the notes used in the module CI01.

This is a copy of the notes used in the module CI01. CI101 This is a copy of the notes used in the module CI01. It is presented to you in the hope that it will be useful and reduce some of the burden of taking notes during the lectures. However, it will

More information

In the following description the h: drive is used to indicate the directory in which during the actual ci101 exam the files used will reside.

In the following description the h: drive is used to indicate the directory in which during the actual ci101 exam the files used will reside. Important In the following description the h: drive is used to indicate the directory in which during the actual ci101 exam the files used will reside. However, if you are trying the exam system out yourself

More information

Semester 1 CI101/CI177. Java

Semester 1 CI101/CI177. Java Semester 1 CI101/CI177 Java Object oriented programming M A Smith University of Brighton March 20, 2017 Page 1 This is a copy of the notes used in the module CI01. It is presented to you in the hope that

More information

Basics of programming

Basics of programming 0. Java summary Core char int double boolean short long float primitive types; int a = 2; int b = 2, c = 4; Declaration of a variable a = b; a = b + c; Assignment b + c; // Addition b - c; // Subtraction

More information

AL GHURAIR UNIVERSITY College of Computing. Objectives: Examples: Text-printing program. CSC 209 JAVA I

AL GHURAIR UNIVERSITY College of Computing. Objectives: Examples: Text-printing program. CSC 209 JAVA I AL GHURAIR UNIVERSITY College of Computing CSC 209 JAVA I week 2- Arithmetic and Decision Making: Equality and Relational Operators Objectives: To use arithmetic operators. The precedence of arithmetic

More information

SCHOOL OF COMPUTING, ENGINEERING AND MATHEMATICS SEMESTER 2 EXAMINATIONS 2014/2015 CI101/CI101H. Programming

SCHOOL OF COMPUTING, ENGINEERING AND MATHEMATICS SEMESTER 2 EXAMINATIONS 2014/2015 CI101/CI101H. Programming s SCHOOL OF COMPUTING, ENGINEERING AND MATHEMATICS SEMESTER 2 EXAMINATIONS 2014/2015 CI101/CI101H Programming Time allowed: THREE hours Answer: ALL questions Items permitted: Items supplied: There is no

More information

1. The Apache Derby database

1. The Apache Derby database 1. The Apache Derby database In these instructions the directory jdk_1.8.0_112 is named after the version 'number' of the distribution. Oracle tend to issue many new versions of the JDK/ JRE each year.

More information

Decision-Making and Repetition

Decision-Making and Repetition 2.2 Recursion Introduction A recursive method is a method that call itself. You may already be familiar with the factorial function (N!) in mathematics. For any positive integer N, N! is defined to be

More information

Lecture 2. CS118 Term planner. Refinement. Recall our first Java program. Program skeleton GCD. For your first seminar. For your second seminar

Lecture 2. CS118 Term planner. Refinement. Recall our first Java program. Program skeleton GCD. For your first seminar. For your second seminar 2 Lecture 2 CS118 Term planner For your first seminar Meet at CS reception Bring The Guide Bring your CS account details Finish the problem sheet in your own time Talk to each other about the questions

More information

1. The Apache Derby database

1. The Apache Derby database 1. The Apache Derby database In these instructions the directory jdk_1.8.0_102 is named after the version 'number' of the distribution. Oracle tend to issue many new versions of the JDK/ JRE each year.

More information

SCHOOL OF COMPUTING, ENGINEERING AND MATHEMATICS SEMESTER 1 EXAMINATIONS 2015/2016 CI101 / CI177. Programming

SCHOOL OF COMPUTING, ENGINEERING AND MATHEMATICS SEMESTER 1 EXAMINATIONS 2015/2016 CI101 / CI177. Programming s SCHOOL OF COMPUTING, ENGINEERING AND MATHEMATICS SEMESTER 1 EXAMINATIONS 2015/2016 CI101 / CI177 Programming Time allowed: THREE hours: Answer: ALL questions Items permitted: Items supplied: There is

More information

CS61B Lecture #2. Public Service Announcements:

CS61B Lecture #2. Public Service Announcements: CS61B Lecture #2 Please make sure you have obtained an account, run register, and finished the survey today. In the future (next week), the password required for surveys and such will be your account password

More information

Announcements. 1. Forms to return today after class:

Announcements. 1. Forms to return today after class: Announcements Handouts (3) to pick up 1. Forms to return today after class: Pretest (take during class later) Laptop information form (fill out during class later) Academic honesty form (must sign) 2.

More information

Please do not share code solutions with your fellow students. This will not help them and in fact may well hinder their learning in this module.

Please do not share code solutions with your fellow students. This will not help them and in fact may well hinder their learning in this module. Extension coursework for Helping your fellow students Please do not share code solutions with your fellow students. This will not help them and in fact may well hinder their learning in this module. By

More information

1.00/1.001 Tutorial 1

1.00/1.001 Tutorial 1 1.00/1.001 Tutorial 1 Introduction to 1.00 September 12 & 13, 2005 Outline Introductions Administrative Stuff Java Basics Eclipse practice PS1 practice Introductions Me Course TA You Name, nickname, major,

More information

1. Find the output of following java program. class MainClass { public static void main (String arg[])

1. Find the output of following java program. class MainClass { public static void main (String arg[]) 1. Find the output of following java program. public static void main(string arg[]) int arr[][]=4,3,2,1; int i,j; for(i=1;i>-1;i--) for(j=1;j>-1;j--) System.out.print(arr[i][j]); 1234 The above java program

More information

Computer Science is...

Computer Science is... Computer Science is... Automated Software Verification Using mathematical logic, computer scientists try to design tools to automatically detect runtime and logical errors in huge, complex programs. Right:

More information

Software and Programming 1

Software and Programming 1 Software and Programming 1 Lab 1: Introduction, HelloWorld Program and use of the Debugger 17 January 2019 SP1-Lab1-2018-19.pptx Tobi Brodie (tobi@dcs.bbk.ac.uk) 1 Module Information Lectures: Afternoon

More information

Class 9: Static Methods and Data Members

Class 9: Static Methods and Data Members Introduction to Computation and Problem Solving Class 9: Static Methods and Data Members Prof. Steven R. Lerman and Dr. V. Judson Harward Goals This the session in which we explain what static means. You

More information

PROGRAMMING FUNDAMENTALS

PROGRAMMING FUNDAMENTALS PROGRAMMING FUNDAMENTALS Q1. Name any two Object Oriented Programming languages? Q2. Why is java called a platform independent language? Q3. Elaborate the java Compilation process. Q4. Why do we write

More information

Array Basics: Outline. Creating and Accessing Arrays. Creating and Accessing Arrays. Arrays (Savitch, Chapter 7)

Array Basics: Outline. Creating and Accessing Arrays. Creating and Accessing Arrays. Arrays (Savitch, Chapter 7) Array Basics: Outline Arrays (Savitch, Chapter 7) TOPICS Array Basics Arrays in Classes and Methods Programming with Arrays Searching and Sorting Arrays Multi-Dimensional Arrays Static Variables and Constants

More information

C212 Early Evaluation Exam Mon Feb Name: Please provide brief (common sense) justifications with your answers below.

C212 Early Evaluation Exam Mon Feb Name: Please provide brief (common sense) justifications with your answers below. C212 Early Evaluation Exam Mon Feb 10 2014 Name: Please provide brief (common sense) justifications with your answers below. 1. What is the type (and value) of this expression: 5 * (7 + 4 / 2) 2. What

More information

CSE20 : Lab #4 - Data Types

CSE20 : Lab #4 - Data Types CSE20 : Lab #4 - Data Types Overview This week we will be exploring different data types and the different meanings we can extract from the same bits. It s a look inside the hood at what we covered in

More information

Claremont McKenna College Computer Science

Claremont 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 information

CSCI 355 LAB #2 Spring 2004

CSCI 355 LAB #2 Spring 2004 CSCI 355 LAB #2 Spring 2004 More Java Objectives: 1. To explore several Unix commands for displaying information about processes. 2. To explore some differences between Java and C++. 3. To write Java applications

More information

Getting started with Java

Getting started with Java Getting started with Java Magic Lines public class MagicLines { public static void main(string[] args) { } } Comments Comments are lines in your code that get ignored during execution. Good for leaving

More information

High Performance Computing MPI and C-Language Seminars 2009

High Performance Computing MPI and C-Language Seminars 2009 High Performance Computing - Seminar Plan Welcome to the High Performance Computing seminars for 2009. Aims: Introduce the C Programming Language. Basic coverage of C and programming techniques needed

More information

Programming Basics. Digital Urban Visualization. People as Flows. ia

Programming Basics.  Digital Urban Visualization. People as Flows. ia Programming Basics Digital Urban Visualization. People as Flows. 28.09.2015 ia zuend@arch.ethz.ch treyer@arch.ethz.ch Programming? Programming is the interaction between the programmer and the computer.

More information

CMSC 150 INTRODUCTION TO COMPUTING LAB WEEK 3 STANDARD IO FORMATTING OUTPUT SCANNER REDIRECTING

CMSC 150 INTRODUCTION TO COMPUTING LAB WEEK 3 STANDARD IO FORMATTING OUTPUT SCANNER REDIRECTING CMSC 150 INTRODUCTION TO COMPUTING LAB WEEK 3 STANDARD IO FORMATTING OUTPUT SCANNER REDIRECTING INPUT AND OUTPUT Input devices Keyboard Mouse Hard drive Network Digital camera Microphone Output devices.

More information

COMP 202 Java in one week

COMP 202 Java in one week COMP 202 Java in one week... Continued CONTENTS: Return to material from previous lecture At-home programming exercises Please Do Ask Questions It's perfectly normal not to understand everything Most of

More information

Outline. Parts 1 to 3 introduce and sketch out the ideas of OOP. Part 5 deals with these ideas in closer detail.

Outline. Parts 1 to 3 introduce and sketch out the ideas of OOP. Part 5 deals with these ideas in closer detail. OOP in Java 1 Outline 1. Getting started, primitive data types and control structures 2. Classes and objects 3. Extending classes 4. Using some standard packages 5. OOP revisited Parts 1 to 3 introduce

More information

2.8. Decision Making: Equality and Relational Operators

2.8. Decision Making: Equality and Relational Operators Page 1 of 6 [Page 56] 2.8. Decision Making: Equality and Relational Operators A condition is an expression that can be either true or false. This section introduces a simple version of Java's if statement

More information

Programming with Java

Programming with Java Programming with Java Variables and Output Statement Lecture 03 First stage Software Engineering Dep. Saman M. Omer 2017-2018 Objectives ü Declare and assign values to variable ü How to use eclipse ü What

More information

M A Smith University of Brighton October 25, 2016 Page 1

M A Smith University of Brighton October 25, 2016 Page 1 Semester 1 CI228 Object oriented software development M A Smith University of Brighton October 25, 2016 Page 1 This is a copy of some of the slides used in the 'Software implementation in Java' part of

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

COMP 250: Java Programming I. Carlos G. Oliver, Jérôme Waldispühl January 17-18, 2018 Slides adapted from M. Blanchette

COMP 250: Java Programming I. Carlos G. Oliver, Jérôme Waldispühl January 17-18, 2018 Slides adapted from M. Blanchette COMP 250: Java Programming I Carlos G. Oliver, Jérôme Waldispühl January 17-18, 2018 Slides adapted from M. Blanchette Variables and types [Downey Ch 2] Variable: temporary storage location in memory.

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

M A Smith University of Brighton November 23, 2015 Page 1

M A Smith University of Brighton November 23, 2015 Page 1 Semester 1 CI228 Object oriented software development M A Smith University of Brighton November 23, 2015 Page 1 This is a copy of some of the slides used in the 'Software implementation in Java' part of

More information

Tutorials. Tutorial every Friday at 11:30 AM in Toldo 204 * discuss the next lab assignment

Tutorials. Tutorial every Friday at 11:30 AM in Toldo 204 * discuss the next lab assignment 60-212 subir@cs.uwindsor.ca Phone # 253-3000 Ext. 2999 web site for course www.cs.uwindsor.ca/60-212 Dr. Subir Bandyopadhayay Website has detailed rules and regulations All assignments and labs will be

More information

ICOM 4015 Advanced Programming Laboratory. Chapter 1 Introduction to Eclipse, Java and JUnit

ICOM 4015 Advanced Programming Laboratory. Chapter 1 Introduction to Eclipse, Java and JUnit ICOM 4015 Advanced Programming Laboratory Chapter 1 Introduction to Eclipse, Java and JUnit University of Puerto Rico Electrical and Computer Engineering Department by Juan E. Surís 1 Introduction This

More information

Operators in java Operator operands.

Operators in java Operator operands. Operators in java Operator in java is a symbol that is used to perform operations and the objects of operation are referred as operands. There are many types of operators in java such as unary operator,

More information

AL GHURAIR UNIVERSITY College of Computing. Objectives: Examples: if Single-Selection Statement CSC 209 JAVA I. week 3- Control Statements: Part I

AL GHURAIR UNIVERSITY College of Computing. Objectives: Examples: if Single-Selection Statement CSC 209 JAVA I. week 3- Control Statements: Part I AL GHURAIR UNIVERSITY College of Computing CSC 209 JAVA I week 3- Control Statements: Part I Objectives: To use the if and if...else selection statements to choose among alternative actions. To use the

More information

St. Edmund Preparatory High School Brooklyn, NY

St. Edmund Preparatory High School Brooklyn, NY AP Computer Science Mr. A. Pinnavaia Summer Assignment St. Edmund Preparatory High School Name: I know it has been about 7 months since you last thought about programming. It s ok. I wouldn t want to think

More information

Software Practice 1 Basic Grammar

Software Practice 1 Basic Grammar Software Practice 1 Basic Grammar Basic Syntax Data Type Loop Control Making Decision Prof. Joonwon Lee T.A. Jaehyun Song Jongseok Kim (42) T.A. Sujin Oh Junseong Lee (43) 1 2 Java Program //package details

More information

Assigned Date: August 27, 2014 Due Date: September 7, 2015, 11:59 PM

Assigned Date: August 27, 2014 Due Date: September 7, 2015, 11:59 PM 15440: Distributed Systems Fall 2015 Problem Solving Assignment 1 A Java Programming Preparation for Project 1 Assigned Date: August 27, 2014 Due Date: September 7, 2015, 11:59 PM 1. Warm Up with Some

More information

Software and Programming 1

Software and Programming 1 Software and Programming 1 Lab 8: Use of classes, static class variables and methods 1st March 2018 SP1-Lab8-2018.pdf Tobi Brodie (Tobi@dcs.bbk.ac.uk) 1 Lab 8 Objectives Understanding the encapsulation

More information

CSCI 355 Lab #2 Spring 2007

CSCI 355 Lab #2 Spring 2007 CSCI 355 Lab #2 Spring 2007 More Java Objectives: 1. To explore several Unix commands for displaying information about processes. 2. To explore some differences between Java and C++. 3. To write Java applications

More information

Inheritance and Interfaces

Inheritance and Interfaces Inheritance and Interfaces Object Orientated Programming in Java Benjamin Kenwright Outline Review What is Inheritance? Why we need Inheritance? Syntax, Formatting,.. What is an Interface? Today s Practical

More information

Course Outline. Introduction to java

Course 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 information

Summer Assignment for the School Year

Summer Assignment for the School Year Summer Assignment for the 2018-2019 School Year Course: AP Computer Science A Instructor: Mr. Rivera Welcome to AP Computer Science A. I am looking forward to an exciting school year of teaching Computer

More information

M A Smith University of Brighton January 12, 2015 Page 1

M A Smith University of Brighton January 12, 2015 Page 1 Semester 1 CI228 Object oriented software development M A Smith University of Brighton January 12, 2015 Page 1 This is a copy of some of the slides used in the 'Software implementation in Java' part of

More information

User s Manual. for. Diagram Consistency and Validation in agenttool III

User s Manual. for. Diagram Consistency and Validation in agenttool III User s Manual for Diagram Consistency and Validation in agenttool III Submitted by Patrick Gallagher CIS 895 MSE Project Department of Computing and Information Sciences Kansas State University Table of

More information

Chapter 11: Create Your Own Objects

Chapter 11: Create Your Own Objects Chapter 11: Create Your Own Objects Think Java: How to Think Like a Computer Scientist 5.1.2 by Allen B. Downey Our usual text takes a fairly non-standard departure in this chapter. Instead, please refer

More information

Menu Driven Systems. While loops, menus and the switch statement. Mairead Meagher Dr. Siobhán Drohan. Produced by:

Menu Driven Systems. While loops, menus and the switch statement. Mairead Meagher Dr. Siobhán Drohan. Produced by: Menu Driven Systems While loops, menus and the switch statement Produced by: Mairead Meagher Dr. Siobhán Drohan Department of Computing and Mathematics http://www.wit.ie/ Topics list while loops recap

More information

CS 113 PRACTICE FINAL

CS 113 PRACTICE FINAL CS 113 PRACTICE FINAL There are 13 questions on this test. The value of each question is: 1-10 multiple choice (4 pt) 11-13 coding problems (20 pt) You may get partial credit for questions 11-13. If you

More information

Agenda CS121/IS223. Reminder. Object Declaration, Creation, Assignment. What is Going On? Variables in Java

Agenda CS121/IS223. Reminder. Object Declaration, Creation, Assignment. What is Going On? Variables in Java CS121/IS223 Object Reference Variables Dr Olly Gotel ogotel@pace.edu http://csis.pace.edu/~ogotel Having problems? -- Come see me or call me in my office hours -- Use the CSIS programming tutors Agenda

More information

Introduction to Software Development (ISD) David Weston and Igor Razgon

Introduction to Software Development (ISD) David Weston and Igor Razgon Introduction to Software Development (ISD) David Weston and Igor Razgon Autumn term 2013 Course book The primary book supporting the ISD module is: Java for Everyone, by Cay Horstmann, 2nd Edition, Wiley,

More information

Last Time. University of British Columbia CPSC 111, Intro to Computation Alan J. Hu. Readings

Last Time. University of British Columbia CPSC 111, Intro to Computation Alan J. Hu. Readings University of British Columbia CPSC 111, Intro to Computation Alan J. Hu Writing a Simple Java Program Intro to Variables Readings Your textbook is Big Java (3rd Ed). This Week s Reading: Ch 2.1-2.5, Ch

More information

Fall Problem Set 1

Fall Problem Set 1 15440 - Fall 2017 Problem Set 1 Out: August 24, 2017 Due: September 11, 2017 1 Warm Up [40 Points] Warm up with some critical concepts in Java Object Oriented and Multithreading Programming: Choose the

More information

Major Assignment: Pacman Game

Major Assignment: Pacman Game Major Assignment: Pacman Game 300580 Programming Fundamentals Week 10 Assignment The major assignment involves producing a Pacman style game with Clara using the Greenfoot files that are given to you.

More information

Software and Programming 1

Software and Programming 1 Software and Programming 1 Week 9 Lab - Use of Classes and Inheritance 8th March 2018 SP1-Lab9-2018.ppt Tobi Brodie (Tobi@dcs.bbk.ac.uk) 1 Lab 9: Objectives Exercise 1 Student & StudentTest classes 1.

More information

Top-Down Program Development

Top-Down Program Development Top-Down Program Development Top-down development is a way of thinking when you try to solve a programming problem It involves starting with the entire problem, and breaking it down into more manageable

More information

cis20.1 design and implementation of software applications I fall 2007 lecture # I.2 topics: introduction to java, part 1

cis20.1 design and implementation of software applications I fall 2007 lecture # I.2 topics: introduction to java, part 1 topics: introduction to java, part 1 cis20.1 design and implementation of software applications I fall 2007 lecture # I.2 cis20.1-fall2007-sklar-leci.2 1 Java. Java is an object-oriented language: it is

More information

Simple Java Programming Constructs 4

Simple Java Programming Constructs 4 Simple Java Programming Constructs 4 Course Map In this module you will learn the basic Java programming constructs, the if and while statements. Introduction Computer Principles and Components Software

More information

The class Object. Lecture CS1122 Summer 2008

The class Object.  Lecture CS1122 Summer 2008 The class Object http://www.javaworld.com/javaworld/jw-01-1999/jw-01-object.html Lecture 10 -- CS1122 Summer 2008 Review Object is at the top of every hierarchy. Every class in Java has an IS-A relationship

More information

CS Introduction to Programming Midterm Exam #1 - Prof. Reed Spring 2010

CS Introduction to Programming Midterm Exam #1 - Prof. Reed Spring 2010 CS 102 - Introduction to Programming Midterm Exam #1 - Prof. Reed Spring 2010 What is your name?: There are two sections: I. True/False..................... 60 points; ( 30 questions, 2 points each) II.

More information

COMP 250 Fall inheritance Nov. 17, 2017

COMP 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 information

BASIC COMPUTATION. public static void main(string [] args) Fundamentals of Computer Science I

BASIC 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 information

This is a copy of some of the slides used in the 'Software implementation in Java' part of the module CI228.

This is a copy of some of the slides used in the 'Software implementation in Java' part of the module CI228. This is a copy of some of the slides used in the 'Software implementation in Java' part of the module CI228. It is presented to you in the hope that it will be useful and reduce some of the burden of taking

More information

CS121/IS223. Object Reference Variables. Dr Olly Gotel

CS121/IS223. Object Reference Variables. Dr Olly Gotel CS121/IS223 Object Reference Variables Dr Olly Gotel ogotel@pace.edu http://csis.pace.edu/~ogotel Having problems? -- Come see me or call me in my office hours -- Use the CSIS programming tutors CS121/IS223

More information

CE221 Programming in C++ Part 1 Introduction

CE221 Programming in C++ Part 1 Introduction CE221 Programming in C++ Part 1 Introduction 06/10/2017 CE221 Part 1 1 Module Schedule There are two lectures (Monday 13.00-13.50 and Tuesday 11.00-11.50) each week in the autumn term, and a 2-hour lab

More information

CS/ENGRD 2110 Object-Oriented Programming and Data Structures Spring 2012 Thorsten Joachims

CS/ENGRD 2110 Object-Oriented Programming and Data Structures Spring 2012 Thorsten Joachims CS/ENGRD 2110 Object-Oriented Programming and Data Structures Spring 2012 Thorsten Joachims Lecture 1: Overview http://courses.cs.cornell.edu/cs2110 1 Course Staff Instructor Thorsten Joachims (tj@cs.cornell.edu)

More information

Tutorial 2 Today we will have a quick introduction to ArgoUML and how to use it, as well as look at some examples of class diagrams.

Tutorial 2 Today we will have a quick introduction to ArgoUML and how to use it, as well as look at some examples of class diagrams. Tutorial 2 Today we will have a quick introduction to ArgoUML and how to use it, as well as look at some examples of class diagrams. This is an answer sheet, answers are marked in RED. Quiz dates: Quiz

More information

Software and Programming 1

Software and Programming 1 Software and Programming 1 Lab 2: Step-by-step execution of programs using a Debugger 18 January 2018 SP1-Lab2-18.pdf Tobi Brodie (tobi@dcs.bbk.ac.uk) 1 Lab Session 2: Objectives This session we are concentrating

More information

Course Content. Objectives of Lecture 18 Black box testing and planned debugging. Outline of Lecture 18

Course Content. Objectives of Lecture 18 Black box testing and planned debugging. Outline of Lecture 18 Structural Programming and Data Structures Winter 2000 CMPUT 102: Testing and Debugging Dr. Osmar R. Zaïane Course Content Introduction Objects Methods Tracing Programs Object State Sharing resources Selection

More information

CITS1001 week 4 Grouping objects

CITS1001 week 4 Grouping objects CITS1001 week 4 Grouping objects Arran Stewart March 20, 2018 1 / 31 Overview In this lecture, we look at how can group objects together into collections. Main concepts: The ArrayList collection Processing

More information

Section 2.2 Your First Program in Java: Printing a Line of Text

Section 2.2 Your First Program in Java: Printing a Line of Text Chapter 2 Introduction to Java Applications Section 2.2 Your First Program in Java: Printing a Line of Text 2.2 Q1: End-of-line comments that should be ignored by the compiler are denoted using a. Two

More information

4CCS1PRP, Programming Practice 2012 Lecture 6: Arrays - Part 1

4CCS1PRP, Programming Practice 2012 Lecture 6: Arrays - Part 1 4CCS1PRP, Programming Practice 2012 Lecture 6: Arrays - Part 1 Martin Chapman Java for Everyone by Cay Horstmann Copyright 2009 by John Wiley & Sons. All rights reserved. Slides by Donald W. Smith TechNeTrain.com

More information

Java Assignment 3: Loop Practice Ver 3.0 Last Updated: 12/1/2015 8:57 AM

Java Assignment 3: Loop Practice Ver 3.0 Last Updated: 12/1/2015 8:57 AM Java Assignment 3: Loop Practice Ver 3.0 Last Updated: 12/1/2015 8:57 AM Let s get some practice creating programs that repeat commands inside of a loop in order to accomplish a particular task. You may

More information

Final Exam. Programming Assignment 3. University of British Columbia CPSC 111, Intro to Computation Alan J. Hu. Readings

Final Exam. Programming Assignment 3. University of British Columbia CPSC 111, Intro to Computation Alan J. Hu. Readings University of British Columbia CPSC 111, Intro to Computation Alan J. Hu Interfaces vs. Inheritance Abstract Classes Inner Classes Readings This Week: No new readings. Consolidate! (Reminder: Readings

More information

AP Computer Science Chapter 10 Implementing and Using Classes Study Guide

AP Computer Science Chapter 10 Implementing and Using Classes Study Guide AP Computer Science Chapter 10 Implementing and Using Classes Study Guide 1. A class that uses a given class X is called a client of X. 2. Private features of a class can be directly accessed only within

More information

18-Dec-09. Exercise #7, Joongle. Background. Sequential search. Consider the following text: Search for the word near

18-Dec-09. Exercise #7, Joongle. Background. Sequential search. Consider the following text: Search for the word near Exercise #7, Joongle Due Wednesday, December 23 rd, :00 2 weeks, not too long, no lab this Tuesday Boaz Kantor Introduction to Computer Science Fall semester 2009-200 IDC Herzliya Background Consider the

More information

COMP 250 Winter 2011 Reading: Java background January 5, 2011

COMP 250 Winter 2011 Reading: Java background January 5, 2011 Almost all of you have taken COMP 202 or equivalent, so I am assuming that you are familiar with the basic techniques and definitions of Java covered in that course. Those of you who have not taken a COMP

More information

Introduction to Java. CSC212 Lecture 6 D. Thiebaut, Fall 2014

Introduction to Java. CSC212 Lecture 6 D. Thiebaut, Fall 2014 Introduction to Java CSC212 Lecture 6 D. Thiebaut, Fall 2014 What is it? It is always surprising It is common in most programming languages It is a natural way to save computer resources Most compilers

More information

Software and Programming 1

Software and Programming 1 Software and Programming 1 Lab 2: Step-by-step execution of programs using a Debugger 24 January 2019 SP1-Lab2-2018-19.pdf Tobi Brodie (tobi@dcs.bbk.ac.uk) 1 Lab Session 2: Objectives This session we are

More information

Wentworth Institute of Technology. Engineering & Technology WIT COMP1000. Java Basics

Wentworth Institute of Technology. Engineering & Technology WIT COMP1000. Java Basics WIT COMP1000 Java Basics Java Origins Java was developed by James Gosling at Sun Microsystems in the early 1990s It was derived largely from the C++ programming language with several enhancements Java

More information

Course Content. Objectives of Lecture 20 Arrays. Outline of Lecture 20. CMPUT 102: Arrays Dr. Osmar R. Zaïane. University of Alberta 4

Course Content. Objectives of Lecture 20 Arrays. Outline of Lecture 20. CMPUT 102: Arrays Dr. Osmar R. Zaïane. University of Alberta 4 Structural Programming and Data Structures Winter CMPUT 1: Arrays Dr. Osmar R. Zaïane Course Content Introduction Objects Methods Tracing Programs Object State Sharing resources Selection Repetition Vectors

More information

Project #1 Seam Carving

Project #1 Seam Carving Project #1 Seam Carving Out: Fri, Jan 19 In: 1 Installing, Handing In, Demos, and Location of Documentation 1. To install, type cs016 install seamcarve into a shell in the directory in which you want the

More information

Università degli Studi di Bologna Facoltà di Ingegneria. Principles, Models, and Applications for Distributed Systems M

Università degli Studi di Bologna Facoltà di Ingegneria. Principles, Models, and Applications for Distributed Systems M Università degli Studi di Bologna Facoltà di Ingegneria Principles, Models, and Applications for Distributed Systems M tutor Isam M. Al Jawarneh, PhD student isam.aljawarneh3@unibo.it Mobile Middleware

More information

COMP 110/L Lecture 5. Kyle Dewey

COMP 110/L Lecture 5. Kyle Dewey COMP 110/L Lecture 5 Kyle Dewey Outlines Methods Defining methods Calling methods Methods Motivation Motivation Input Program Output -Start off with some high-level motivation -You write your program,

More information

Section 2.2 Your First Program in Java: Printing a Line of Text

Section 2.2 Your First Program in Java: Printing a Line of Text Chapter 2 Introduction to Java Applications Section 2.2 Your First Program in Java: Printing a Line of Text 2.2 Q1: End-of-line comments that should be ignored by the compiler are denoted using a. Two

More information

TOPIC 8 MORE ON WHILE LOOPS

TOPIC 8 MORE ON WHILE LOOPS 1 TOPIC 8 MORE ON WHILE LOOPS Notes adapted from Introduction to Computing and Programming with Java: A Multimedia Approach by M. Guzdial and B. Ericson, and instructor materials prepared by B. Ericson.

More information

CS112 Lecture: Variables, Expressions, Computation, Constants, Numeric Input-Output

CS112 Lecture: Variables, Expressions, Computation, Constants, Numeric Input-Output CS112 Lecture: Variables, Expressions, Computation, Constants, Numeric Input-Output Last revised January 12, 2006 Objectives: 1. To introduce arithmetic operators and expressions 2. To introduce variables

More information

Input from Files. Buffered Reader

Input from Files. Buffered Reader Input from Files Buffered Reader Input from files is always text. You can convert it to ints using Integer.parseInt() We use BufferedReaders to minimize the number of reads to the file. The Buffer reads

More information

Week 3 Classes and Objects

Week 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 information

Sequence structure. The computer executes java statements one after the other in the order in which they are written. Total = total +grade;

Sequence structure. The computer executes java statements one after the other in the order in which they are written. Total = total +grade; Control Statements Control Statements All programs could be written in terms of only one of three control structures: Sequence Structure Selection Structure Repetition Structure Sequence structure The

More information

Fundamentals of Programming Data Types & Methods

Fundamentals of Programming Data Types & Methods Fundamentals of Programming Data Types & Methods By Budditha Hettige Overview Summary (Previous Lesson) Java Data types Default values Variables Input data from keyboard Display results Methods Operators

More information

Classes, interfaces, & documentation. Review of basic building blocks

Classes, interfaces, & documentation. Review of basic building blocks Classes, interfaces, & documentation Review of basic building blocks Objects Data structures literally, storage containers for data constitute object knowledge or state Operations an object can perform

More information