COSC 236 Section 101 Computer Science 1 -- Prof. Michael A. Soderstrand
|
|
- Georgina Franklin
- 6 years ago
- Views:
Transcription
1 COSC 236 Section 101 Computer Science 1 -- Prof. Michael A. Soderstrand
2 COSC 236 Web Site You will always find the course material at: From this site you can click on the COSC-236 tab to download the PowerPoint lectures, the Quiz solutions and the Laboratory assignments. 2
3 Lecture 05 2/10/2014 3
4 Review of Quiz 6 4
5 Review of Quiz 6 Line "\\\\ i "!!" 11 2*i "//" i exclamation = a i + b 11 = a 0 + b => b = 11 9 = a 1 + b => a = 9 b = 9 11 = 2 exclamation = 11 2 i 5
6 Review of Quiz 6 Line "\\\\ i "!!" 11 2*i "//" i
7 Review of Quiz 6 7
8 One-Slide Review of Chapter 2 Chapter 2 introduced: The for loop Techniques for managing complexity Class constants to make programs more flexible Chapter 3 will introduce: More techniques to make programs flexible 8
9 Chapter 3 explores Methods with parameters, a more powerful technique for obtaining flexibility Methods that take a parameter (Today's lecture) Methods that return a parameter (Wed 2/19) Objects and how to use them in Java programs (Mon 2/24) We aren t going to explore the details of defining objects Java comes with a rich library of predefined objects that can be used to solve many common programming tasks. Scanner objects and how to use them (Wed 2/26) Allows you to write interactive programs that prompt for input Allows you to write programs with easier formatted output. 9
10 In today's Lecture (Section 3.1, pp ) We will explore how to use parameters to create methods that solve not just single tasks, but whole families of tasks Creating such methods requires you to generalize Look beyond a specific task to find the more general category of task that it exemplifies The ability to generalize is one of the most important qualities of a good software engineer The generalization technique we will cover in today's lecture is one of the most powerful techniques programmers use 10
11 Recall that methods allow us to write new commands for Java We can then use (call) these new commands in the main method We can also use (call) these new commands in other methods Also recall that the scope of variables is limited to the method Variables in the main method (calling method) are not available to the method (called method) used in the main method In general, variables in a calling method are not available to a called method Today s lecture will discuss how to send information from the calling method to the called method Wednesday we will look at returning information from a called method to the calling method 11
12 In Chapter 2 we did learn one technique to get around this problem We can use a class constant to propagate a value to all methods used in the class This allowed us to write methods that could be scaled by the class constant However, there are at least two problems with class constants These are constants, hence cannot be changed during execution of the program (class) The scope of class constants is often too great we would like to limit the scope to the calling method and the called method 12
13 Use of Parameters in Methods (pp ) public class Param { public static void main(string[] args){ int stars = 10; printstars(10); printstars(stars); printstars(2*stars - 10); public static void printstars(int number){ for (int i = 1; i <= number; i++) { System.out.print("*"); System.out.println(); Variable stars exists only in the main method Each of these is an actual parameter that is passed from the main method to the method printstars Variable number is a formal parameter that exists only within the method printstars 13
14 Use of Parameters in Methods (pp ) public class Param { public static void main(string[] args){ int stars = 10; printstars(10); printstars(stars); printstars(2*stars - 10); public static void printstars(int number){ for (int i = 1; i <= number; i++) { System.out.print("*"); System.out.println(); Variable stars exists only in the main method A value passed as an actual parameter A variable passed as an actual parameter An expression passed as an actual parameter Variable number is a formal parameter that exists only within the method printstars 14
15 Use of Parameters in Methods (pp ) public class Param { public static void main(string[] args){ int stars = 10; printstars(10); Value printstars(stars); printstars(2*stars - 10); Variable Expression public static void printstars(int number){ for (int i = 1; i <= number; i++) { System.out.print("*"); System.out.println(); NOTE: If you were to change the value of number in the method printstars, it would have no effect on anything in the main method but could result in logical errors generally it is poor programming practice to change the value of a formal parameter, but there are times when it is OK. 15
16 Redundant recipes (pp ) Recipe for baking 20 cookies: Mix the following ingredients in a bowl: 4 cups flour 1 cup butter 1 cup sugar 2 eggs 40 pounds chocolate chips... Place on sheet and Bake for about 10 minutes. Recipe for baking 40 cookies: Mix the following ingredients in a bowl: 8 cups flour 2 cups butter 2 cups sugar 4 eggs 80 pounds chocolate chips... Place on sheet and Bake for about 10 minutes. 16
17 Parameterized recipe (pp ) Recipe for baking 20 cookies: Mix the following ingredients in a bowl: 4 cups flour 1 cup sugar 2 eggs... Recipe for baking N cookies: Mix the following ingredients in a bowl: N/5 cups flour N/20 cups butter N/20 cups sugar N/10 eggs 2N bags chocolate chips... Place on sheet and Bake for about 10 minutes. parameter: A value that distinguishes similar tasks. 17
18 Redundant figures (pp ) Consider the task of printing the following lines ************* ******* *********************************** ********** * * ********** ***** * * * * ***** and boxes 18
19 A redundant solution (pp ) public class Stars1 { public static void main(string[] args) { lineof13(); lineof7(); lineof35(); public static void lineof13() { for (int i = 1; i <= 13; i++) { System.out.print("*"); System.out.println(); public static void lineof7() { for (int i = 1; i <= 7; i++) { System.out.print("*"); System.out.println(); public static void lineof35() { for (int i = 1; i <= 35; i++) { System.out.print("*"); System.out.println(); This code is redundant. Would variables help? Would constants help? What is a better solution? line - A method to draw a line of any number of stars. 19
20 A redundant solution (pp ) public class Box1 { public static void main(string[] args) { box10x3(); box5x4(); public static void box10x3() { System.out.println("**********"); for (int i = 1; i <= 2; i++) { System.out.println("* *"); System.out.println("**********\n"); public static void box5x4() { System.out.println("*****"); for (int i = 1; i <= 4; i++) { System.out.println("* *"); System.out.println("*****"); This code is redundant. Would variables help? Would constants help? What is a better solution? box - A method to draw a box of any width and heigth. 20
21 Parameterization (pp ) parameter: A value passed to a method by its caller. Instead of lineof7, lineof13, write line to draw any length. When declaring the method, we will state that it requires a parameter for the number of stars. When calling the method, we will specify how many stars to draw. 7 main line ******* 13 line ************* 21
22 Declaring a parameter (pp ) Declaring parameter: Stating that a method requires a parameter in order to run public static void name ( type name ) { statement(s); Example: public static void saypassword(int code) { System.out.println("The password is: " + code); When saypassword is called, the caller must specify the integer code to print. 22
23 Passing a parameter (pp ) Passing a parameter: Calling a method and specifying values for its parameters name (expression); Example: public static void main(string[] args) { saypassword(42); saypassword(12345); Output: The password is 42 The password is
24 Parameters and loops (pp ) A parameter can guide the number of repetitions of a loop. public static void main(string[] args) { chant(3); public static void chant(int times) { for (int i = 1; i <= times; i++) { System.out.println("Just a salad..."); Output: Just a salad... Just a salad... Just a salad... 24
25 Mechanics of Parameters (pp ) When the method is called: The value is stored into the parameter variable. The method's code executes using that value. public static void main(string[] args) { chant(3); chant(7); public static void chant(int times) { for (int i = 1; i <= times; i++) { System.out.println("Just a salad..."); 37 25
26 Common errors (pp ) If a method accepts a parameter, it is illegal to call it without passing any value for that parameter. chant(); // ERROR: parameter value required The value passed to a method must be of the correct type. chant(3.7); // ERROR: must be of type int Exercise: Change the Stars program to use a parameterized method for drawing lines of stars. 26
27 Stars solution (pp ) // Prints several lines of stars. // Uses a parameterized method to remove redundancy. public class Stars2 { public static void main(string[] args) { line(13); line(7); line(35); // Prints the given number of stars plus a line break. public static void line(int count) { for (int i = 1; i <= count; i++) { System.out.print("*"); System.out.println(); 27
28 Value semantics (pp ) value semantics: When primitive variables (int, double) are passed as parameters, their values are copied. Modifying the parameter will not affect the variable passed in. public static void strange(int x) { x = x + 1; System.out.println("1. x = " + x); public static void main(string[] args) { int x = 23; strange(x); System.out.println("2. x = " + x);... Output: 1. x = x = 23 28
29 Details (pp ) public static void strange(int x) { x = x + 1; System.out.println("1. x = " + x); public static void main(string[] args) { int x = 23; strange(x); System.out.println("2. x = " + x);... x in main x in strange Output: 1. x = x = 23 29
30 Multiple parameters (pp ) A method can accept multiple parameters. (separate by, ) When calling it, you must pass values for each parameter. Declaration: public static void name (type name,..., type name) { statement(s); Call: methodname (value, value,..., value); 30
31 Multiple parameters example (pp ) public static void main(string[] args) { printnumber(4, 9); printnumber(17, 6); printnumber(8, 0); printnumber(0, 8); public static void printnumber(int number, int count) { for (int i = 1; i <= count; i++) { System.out.print(number); System.out.println(); Output:
32 Modify Stars to use Parameters (pp ) public class Stars3 { // Prints lines and boxes made of stars. public static void main(string[] args) { line(13); // 3rd version / multiple parameterized methods. line(7); line(35); System.out.println(); box(10, 3); box(5, 4); box(20, 7); 32
33 Stars continued (pp ) public static void line(int count) { // Prints the given number of stars plus a line break. for (int i = 1; i <= count; i++) { System.out.print("*"); System.out.println(); 33
34 Stars Continued (pp ) // Prints a box of stars of the given size. public static void box(int width, int height) { line(width); for (int line = 1; line <= height - 2; line++) { System.out.print("*"); for (int space = 1; space <= width - 2; space++) { System.out.print(" "); System.out.println("*"); line(width); 34
35 "Parameter Mystery" problem (pp ) public class ParameterMystery { public static void main(string[] args) { int x = 9; int y = 2; int z = 5; mystery(z, y, x); mystery(y, x, z); public static void mystery(int x, int z, int y) { System.out.println(z + " and " + (y - x)); 35
36 Strings (pp ) string: A sequence of text characters. String name = "text"; String name = expression; Examples: String name = "Marla Singer"; int x = 3; int y = 5; String point = "(" + x + ", " + y + ")"; 36
37 Strings as parameters (pp ) public class StringParameters { public static void main(string[] args) { sayhello("marty"); String teacher = "Bictolia"; sayhello(teacher); Output: Welcome, Marty Welcome, Bictolia public static void sayhello(string name) { System.out.println("Welcome, " + name); 37
38 Stars modified for a string of two characters String consisting of the two characters *^ 38
39 Stars solution, cont'd. 39
40 Overloaded Methods (pp ) Java allows us to define several different methods with the same name as long as the number of parameters is different When we have two different instances of the same method with different numbers of parameters, these are called Overloaded Methods Overloaded Methods provide great flexibility to the programmer As an example, lets design an overloaded drawbox method: public static void drawbox(char sym, integer height, int width) public static void drawbox() This is the default form with a 0-parameter Method Signature This is the standard form with a 3-parameter Method Signature 40
41 Overloaded Methods (pp ) The standard Method Signature allows the specification of the symbol to print, the height and the width of the box. The default Method Signature requires no parameters This is the definition of the Standard Method with the 3-parameter Method Signature 41
42 Overloaded Methods (pp ) This is the definition of the Default Method with the 0-parameter Method Signature 42
43 Overloaded Methods (pp ) Symbol =. (dot) Height = 6 Width = 14 DEFAULT: Symbol = * (star) Height = 5 Width = 10 43
44 Assignments for this week 1. Laboratory for Chapter 2 due TODAY (Monday 2/17) NOTE: Due date on handout is incorrect IMPORTANT: When you me your laboratory Word Document, be sure it is all in one file 2. Read Section 3.2 for Wednesday (pp ) 3. Be sure to complete Quiz 7 before leaving class tonight This is another program to write You must demonstrate the program to me before you leave lab 44
Building Java Programs
Building Java Programs Chapter 3 Lecture 3-1: Parameters reading: 3.1 self-check: #1-6 exercises: #1-3 videos: Ch. 3 #1 Redundant recipes Recipe for baking 20 cookies: Mix the following ingredients in
More informationBuilding Java Programs
Building Java Programs Chapter 3 Lecture 3-1: Parameters reading: 3.1 (I think this is a made up language like Visual Basic but not quite.) 2 Promoting reuse Programmers build increasingly complex applications
More informationBuilding Java Programs
Building Java Programs Chapter 3 Lecture 5: Parameters and Scope reading: 3.1 i's scope Scope scope: The part of a program where a variable exists. From its declaration to the end of the { braces A variable
More informationTopic 7 parameters. Based on slides from Marty Stepp and Stuart Reges from
Topic 7 parameters "We're flooding people with information. We need to feed it through a processor. A human must turn information into intelligence or knowledge. We've tended to forget that no computer
More informationCSc 110, Autumn 2016 Lecture 6: Parameters. Adapted from slides by Marty Stepp and Stuart Reges
CSc 110, Autumn 2016 Lecture 6: Parameters Adapted from slides by Marty Stepp and Stuart Reges Promoting reuse Programmers build increasingly complex applications Enabled by existing building blocks, e.g.
More informationBuilding Java Programs Chapter 3
Building Java Programs Chapter 3 Parameters and Objects Copyright (c) Pearson 2013. All rights reserved. Redundant recipes Recipe for baking 20 cookies: Mix the following ingredients in a bowl: 4 cups
More informationRedundant recipes. Building Java Programs Chapter 3. Parameterized recipe. Redundant figures
Redundant recipes Building Java Programs Chapter 3 Parameters and Objects Copyright (c) Pearson 2013. All rights reserved. Recipe for baking 20 cookies: Mix the following ingredients in a bowl: 4 cups
More informationCOSC 236 Section 101 Computer Science 1 -- Prof. Michael A. Soderstrand
COSC 236 Section 101 Computer Science 1 -- Prof. Michael A. Soderstrand COSC 236 Web Site You will always find the course material at: http://www.class-notes.us From this site you can click on the COSC-236
More informationCOSC 236 Section 101 Computer Science 1 -- Prof. Michael A. Soderstrand
COSC 236 Section 101 Computer Science 1 -- Prof. Michael A. Soderstrand COSC 236 Web Site You will always find the course material at: http://www.class-notes.us From this site you can click on the COSC-236
More informationCOSC 236 Section 101 Computer Science 1 -- Prof. Michael A. Soderstrand
COSC 236 Section 101 Computer Science 1 -- Prof. Michael A. Soderstrand COSC 236 Web Site You will always find the course material at: http://www.class-notes.us or http://www.class-notes.info or http://www.lecture-notes.tripod.com
More informationBuilding Java Programs
Building Java Programs Chapter 3 Lecture 3-1: Parameters reading: 3.1 Redundant recipes Recipe for baking 20 cookies: Mix the following ingredients in a bowl: 4 cups flour 1 cup butter 1 cup sugar 2 eggs
More informationCS 112 Introduction to Programming
CS 112 Introduction to Programming Summary of Methods; User Input using Scanner Yang (Richard) Yang Computer Science Department Yale University 308A Watson, Phone: 432-6400 Email: yry@cs.yale.edu Admin
More informationAdmin. CS 112 Introduction to Programming. Counting Down: Code Puzzle. Counting Down: Code Puzzle
Admin CS 112 Introduction to Programming Variable Scoping; Nested Loops; Parameterized Methods Yang (Richard) Yang Computer Science Department Yale University 308A Watson, Phone: 432-6400 Email: yry@cs.yale.edu
More informationCS 112 Introduction to Programming
CS 112 Introduction to Programming Variable Scoping; Nested Loops; Parameterized Methods Yang (Richard) Yang Computer Science Department Yale University 308A Watson, Phone: 432-6400 Email: yry@cs.yale.edu
More informationCOSC 236 Section 101 Computer Science 1 -- Prof. Michael A. Soderstrand
COSC 236 Section 101 Computer Science 1 -- Prof. Michael A. Soderstrand COSC 236 Web Site You will always find the course material at: http://www.class-notes.us or http://www.class-notes.info or http://www.lecture-notes.tripod.com
More informationCOSC 236 Section 101 Computer Science 1 -- Prof. Michael A. Soderstrand
COSC 236 Section 101 Computer Science 1 -- Prof. Michael A. Soderstrand COSC 236 Web Site I have decided to keep this site for the whole semester I still hope to have blackboard up and running, but you
More informationCSE 201 Java Programming I. Smart Coding School website:
CSE 201 Java Programming I Smart Coding School website: http://www.smartcodingschool.com Definition: A named group of statements public static void methodname() { statements Usage: 1. denotes the structure
More informationCOSC 236 Section 101 Computer Science 1 -- Prof. Michael A. Soderstrand
COSC 236 Section 101 Computer Science 1 -- Prof. Michael A. Soderstrand COSC 236 Web Site You will always find the course material at: http://www.class-notes.us From this site you can click on the COSC-236
More informationCOSC 236 Section 101 Computer Science 1 -- Prof. Michael A. Soderstrand
COSC 236 Section 101 Computer Science 1 -- Prof. Michael A. Soderstrand COSC 236 Web Site You will always find the course material at: http://www.class-notes.us or http://www.class-notes.info or http://www.lecture-notes.tripod.com
More informationCS 1063 Introduction to Computer Programming Midterm Exam 2 Section 1 Sample Exam
Seat Number Name CS 1063 Introduction to Computer Programming Midterm Exam 2 Section 1 Sample Exam This is a closed book exam. Answer all of the questions on the question paper in the space provided. If
More informationCSE 143 Lecture 10. Recursion
CSE 143 Lecture 10 Recursion slides created by Marty Stepp and Alyssa Harding http://www.cs.washington.edu/143/ Recursion Iteration: a programming technique in which you describe actions to be repeated
More informationCOSC 236 Section 101 Computer Science 1 -- Prof. Michael A. Soderstrand
COSC 236 Section 101 Computer Science 1 -- Prof. Michael A. Soderstrand COSC 236 Web Site I hope to have a course web site up on Blackboard soon However, I am using the following site all semester to allow
More informationCOSC 236 Section 101 Computer Science 1 -- Prof. Michael A. Soderstrand
COSC 236 Section 101 Computer Science 1 -- Prof. Michael A. Soderstrand COSC 236 Web Site You will always find the course material at: http://www.class-notes.us or http://www.class-notes.info or http://www.lecture-notes.tripod.com
More informationCSE 142, Summer 2015
CSE 142, Summer 2015 Lecture 2: Static Methods Expressions reading: 1.4 2.1 The Mechanical Turk 2 Escape Characters System.out.println( ab\ \\\\\\/\td ); Output: ab \\\/ d 3 Algorithms algorithm: A list
More informationBuilding Java Programs
Building Java Programs Chapter 1 Lecture 2: Static Methods reading: 1.4-1.5 (Slides adapted from Stuart Reges, Hélène Martin, and Marty Stepp) 2 Recall: structure, syntax class: a program public class
More informationCOSC 236 Section 101 Computer Science 1 -- Prof. Michael A. Soderstrand
COSC 236 Section 101 Computer Science 1 -- Prof. Michael A. Soderstrand COSC 236 Web Site You will always find the course material at: http://www.class-notes.us or http://www.class-notes.info or http://www.lecture-notes.tripod.com
More informationCSE 142, Summer 2014
CSE 142, Summer 2014 Lecture 2: Static Methods Expressions reading: 1.4 2.1 Algorithms algorithm: A list of steps for solving a problem. Example algorithm: "Bake sugar cookies" Mix the dry ingredients.
More informationCOSC 236 Section 101 Computer Science 1 -- Prof. Michael A. Soderstrand
COSC 236 Section 101 Computer Science 1 -- Prof. Michael A. Soderstrand COSC 236 Web Site You will always find the course material at: http://www.class-notes.us or http://www.class-notes.info or http://www.lecture-notes.tripod.com
More informationCS 106A, Lecture 7 Parameters and Return
CS 106A, Lecture 7 Parameters and Return suggested reading: Java Ch. 5.1-5.4 This document is copyright (C) Stanford Computer Science and Marty Stepp, licensed under Creative Commons Attribution 2.5 License.
More informationCIS 110: Introduction to Computer Programming
CIS 110: Introduction to Computer Programming Lecture 8 Hey (Objects), Listen! ( 3.2-3.3) 10/2/2011 CIS 110 (11fa) - University of Pennsylvania 1 Outline Review: what is a library? The Math class The String
More informationCS 112 Introduction to Programming
CS 112 Introduction to Programming Graphics; Animation Yang (Richard) Yang Computer Science Department Yale University 308A Watson, Phone: 432-6400 Email: yry@cs.yale.edu Admin q Issues on PS3 NumberCoolness:
More informationTopic 6 loops, figures, constants
Topic 6 loops, figures, constants "Complexity has and will maintain a strong fascination for many people. It is true that we live in a complex world and strive to solve inherently complex problems, which
More informationCS 112 Introduction to Programming
CS 112 Introduction to Programming Graphics; Animation Yang (Richard) Yang Computer Science Department Yale University 308A Watson, Phone: 432-6400 Email: yry@cs.yale.edu Admin q Issues on PS3 NumberCoolness:
More informationJava Programming. What is a program? Programs Recipes. Programs as Recipes 8/16/12. Pancakes In one bowl. mix: 1½ cup flour
What is a program? Java Programming CS 160, Fall Semester 2012 TOPICS Computer Programs Using Eclipse Program Program Components Definition: a sequence of instructions telling a computer what to do Analogy:
More informationCIS 110: Introduction to Computer Programming
CIS 110: Introduction to Computer Programming Lecture 6 Flexible Methods ( 3.1-3.2) 9/27/2011 CIS 110 (11fa) - University of Pennsylvania 1 Announcements Homework 2 due at 23:59:59 tonight! Watch Piazza
More informationGraded Project. HTML Coding
Graded Project HTML Coding OVERVIEW 1 INSTRUCTIONS 1 SUBMITTING YOUR PROJECT 17 Contents iii HTML Coding OVERVIEW After completing the exercises for your HTML Coding study guide, you re now ready to complete
More informationCOSC 236 Section 101 Computer Science 1 -- Prof. Michael A. Soderstrand
COSC 236 Section 101 Computer Science 1 -- Prof. Michael A. Soderstrand COSC 236 Web Site You will always find the course material at: http://www.class-notes.us or http://www.class-notes.info or http://www.lecture-notes.tripod.com
More informationAL 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 informationComputer 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 informationCOSC 236 Section 101 Computer Science 1 -- Prof. Michael A. Soderstrand
COSC 236 Section 101 Computer Science 1 -- Prof. Michael A. Soderstrand COSC 236 Web Site You will always find the course material at: http://www.class-notes.us or http://www.class-notes.info or http://www.lecture-notes.tripod.com
More informationStatic Methods & Decomposition
Static Methods & Decomposition Subset of the Supplement Lesson slides from: Building Java Programs, Chapter 1 by Stuart Reges and Marty Stepp (http://www.buildingjavaprograms.com/ ) Warm Up Questions What
More informationCSEN 202 Introduction to Computer Programming
CSEN 202 Introduction to Computer Programming Lecture 3: Decisions Prof. Dr. Slim Abdennadher and Dr Mohammed Abdel Megeed Salem, slim.abdennadher@guc.edu.eg German University Cairo, Department of Media
More informationclicker question Comments Using comments Topic 3 static Methods and Structured Programming
Topic 3 static Methods and Structured Programming "The cleaner and nicer the program, the faster it's going to run. And if it doesn't, it'll be easy to make it fast." -Joshua Bloch clicker question What
More informationtrue false Imperative Programming III, sections , 3.0, 3.9 Introductory Programming Control flow of programs While loops: generally Loops
Introductory Programming Imperative Programming III, sections 3.6-3.8, 3.0, 3.9 Anne Haxthausen a IMM, DTU 1. Loops (while, do, for) (sections 3.6 3.8) 2. Overview of Java s (learnt so far) 3. Program
More informationCS 112 Introduction to Programming
CS 112 Introduction to Programming (Spring 2012) Lecture #6: Static Methods and Decomposition Zhong Shao Department of Computer Science Yale University Office: 314 Watson http://flint.cs.yale.edu/cs112
More informationCOSC 236 Section 101 Computer Science 1 -- Prof. Michael A. Soderstrand
COSC 236 Section 101 Computer Science 1 -- Prof. Michael A. Soderstrand COSC 236 Web Site You will always find the course material at: http://www.class-notes.us or http://www.class-notes.info or http://www.lecture-notes.tripod.com
More informationRecursion. Garfield AP Computer Science. As usual, significant borrowings from Stuart Reges and Marty Stepp at UW -- thanks!!
Recursion Garfield AP Computer Science As usual, significant borrowings from Stuart Reges and Marty Stepp at UW -- thanks!! Definitions recursion: The definition of an operation in terms of itself. Solving
More informationCS 161: Object Oriented Problem Solving
About this course CS 161: Object Oriented Problem Solving About this course Course webpage: http://www.cs.colostate.edu/~cs161/ The course webpage is our major communication tool. Check it on a daily basis!
More informationLecture Set 4: More About Methods and More About Operators
Lecture Set 4: More About Methods and More About Operators Methods Definitions Invocations More arithmetic operators Operator Side effects Operator Precedence Short-circuiting main method public static
More informationRecap: Structure of a Java program CS 112 Introduction to Programming. A Foundation for Programming Why Introduce Static Methods?
Recap: Structure of a Java program CS 112 Introduction to Programming A class: - has a name, defined in a file with same name Convention we follow: capitalize each English word - starts with {, and ends
More informationComputer Science is...
Computer Science is... Machine Learning Machine learning is the study of computer algorithms that improve automatically through experience. Example: develop adaptive strategies for the control of epileptic
More informationCS 161: Object Oriented Problem Solving
CS 161: Object Oriented Problem Solving Like 160, 161 is a combination of programming and discrete math. Why is math important to us? What does that have to do with computer science? From procedural to
More informationCS 302: INTRODUCTION TO PROGRAMMING IN JAVA. Chapter 5: Methods. Lecture 10
CS 302: INTRODUCTION TO PROGRAMMING IN JAVA Chapter 5: Methods Lecture 10 1 PROBLEM What if I was using a lot of different arrays and often wanted to print out their contents? I would have to have that
More informationLecture 19: Recursion
Lecture 19: Recursion Building Java Programs: A Back to Basics Approach by Stuart Reges and Marty Stepp Copyright (c) Pearson 2013. All rights reserved. Recursion recursion: The definition of an operation
More informationBuilding Java Programs
Building Java Programs Chapter 1 Lecture 1-2: Static Methods reading: 1.4-1.5 2 Recall: structure, syntax class: a program public class name { public static void main(string[] args) { statement; statement;...
More informationCOMP 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 informationRepe$$on CSC 121 Spring 2017 Howard Rosenthal
Repe$$on CSC 121 Spring 2017 Howard Rosenthal Lesson Goals Learn the following three repetition structures in Java, their syntax, their similarities and differences, and how to avoid common errors when
More informationLecture 5: Methods CS2301
Lecture 5: Methods NADA ALZAHRANI CS2301 1 Opening Problem Find the sum of integers from 1 to 10, from 20 to 30, and from 35 to 45, respectively. 2 Solution public static int sum(int i1, int i2) { int
More informationRecap: Assignment as an Operator CS 112 Introduction to Programming
Recap: Assignment as an Operator CS 112 Introduction to Programming q You can consider assignment as an operator, with a (Spring 2012) lower precedence than the arithmetic operators First the expression
More informationBuilding Java Programs Chapter 2
Building Java Programs Chapter 2 Primitive Data and Definite Loops Copyright (c) Pearson 2013. All rights reserved. Data types type: A category or set of data values. Constrains the operations that can
More informationRepe$$on CSC 121 Fall 2015 Howard Rosenthal
Repe$$on CSC 121 Fall 2015 Howard Rosenthal Lesson Goals Learn the following three repetition methods, their similarities and differences, and how to avoid common errors when using them: while do-while
More informationAnnouncements. 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 informationQUIZ 2 Introduction to Computer Science (COMP 250) Mon. March 2, 2009 Professor Michael Langer
QUIZ 2 Introduction to Computer Science (COMP 250) Mon. March 2, 2009 Professor Michael Langer STUDENT NAME: ID: The exam consists of five questions. There are a total of 10 points. You may use the back
More informationpublic Twix() { calories = 285; ingredients = "chocolate, sugar, cookie, caramel"; }
Additional inheritance example As another example of inheritance, perhaps we would like to build an application about candy. For starters, let s say we want to do something with Twix bars and something
More informationBuilding Java Programs
Building Java Programs Chapter 4 Lecture 4-2: Strings reading: 3.3, 4.3-4.4 self-check: Ch. 4 #12, 15 exercises: Ch. 4 #15, 16 videos: Ch. 3 #3 1 Objects and classes object: An entity that contains: data
More informationJava Programming. What is a program? Programs as Recipes. Programs Recipes 8/20/15. Pancakes In one bowl
What is a program? Java Programming CS 160, Fall Semester 2012 TOPICS Computer Programs Using Eclipse Program Program Components Definition: a sequence of instructions telling a computer what to do Analogy:
More informationDefinite Loops. Computer Science S-111 Harvard University David G. Sullivan, Ph.D. Using a Variable for Counting
Unit 2, Part 2 Definite Loops Computer Science S-111 Harvard University David G. Sullivan, Ph.D. Using a Variable for Counting Let's say that we're using a variable i to count the number of times that
More informationMethods Summer 2010 Margaret Reid-Miller
Methods 15-110 Margaret Reid-Miller Methods A method is a group of programming statements that has a name, e.g., main()! A method definition includes the method header and method body. Flow of control:
More informationLecture Set 4: More About Methods and More About Operators
Lecture Set 4: More About Methods and More About Operators Methods Definitions Invocations More arithmetic operators Operator Side effects Operator Precedence Short-circuiting main method public static
More informationParameters. Repetitive figures. A solution? Parameterization. Declaring parameterized methods. Generalizing methods. Readings: 3.1
Repetitive figures Parameters Consider the task of drawing the following figures: ************* ******* *********************************** Readings: 3.1 ********** * * ********** ***** * * * * ***** The
More informationCS 112 Introduction to Programming
CS 112 Introduction to Programming (Spring 2012) Lecture #7: Variable Scope, Constants, and Loops Zhong Shao Department of Computer Science Yale University Office: 314 Watson http://flint.cs.yale.edu/cs112
More informationProgramming: Java. Chapter Objectives. Chapter Objectives (continued) Program Design Including Data Structures. Chapter 7: User-Defined Methods
Chapter 7: User-Defined Methods Java Programming: Program Design Including Data Structures Chapter Objectives Understand how methods are used in Java programming Learn about standard (predefined) methods
More informationCOSC 236 Section 101 Computer Science 1 -- Prof. Michael A. Soderstrand
COSC 236 Section 101 Computer Science 1 -- Prof. Michael A. Soderstrand COSC 236 Web Site You will always find the course material at: http://www.class-notes.us or http://www.class-notes.info or http://www.lecture-notes.tripod.com
More informationAP CS Unit 3: Control Structures Notes
AP CS Unit 3: Control Structures Notes The if and if-else Statements. These statements are called control statements because they control whether a particular block of code is executed or not. Some texts
More informationBuilding Java Programs Chapter 2. bug. Primitive Data and Definite Loops. Copyright (c) Pearson All rights reserved. Software Flaw.
Building Java Programs Chapter 2 bug Primitive Data and Definite Loops Copyright (c) Pearson 2013. All rights reserved. 2 An Insect Software Flaw 3 4 Bug, Kentucky Bug Eyed 5 Cheesy Movie 6 Punch Buggy
More informationBuilding Java Programs Chapter 2
Building Java Programs Chapter 2 Primitive Data and Definite Loops Copyright (c) Pearson 2013. All rights reserved. bug 2 An Insect 3 Software Flaw 4 Bug, Kentucky 5 Bug Eyed 6 Cheesy Movie 7 Punch Buggy
More informationAP Computer Science Summer Work Mrs. Kaelin
AP Computer Science Summer Work 2018-2019 Mrs. Kaelin jkaelin@pasco.k12.fl.us Welcome future 2018 2019 AP Computer Science Students! I am so excited that you have decided to embark on this journey with
More informationRepetition with for loops
Repetition with for loops So far, when we wanted to perform a task multiple times, we have written redundant code: System.out.println( Building Java Programs ); // print 5 blank lines System.out.println(
More informationChapter 5 Methods. public class FirstMethod { public static void main(string[] args) { double x= -2.0, y; for (int i = 1; i <= 5; i++ ) { y = f( x );
Chapter 5 Methods Sections Pages Review Questions Programming Exercises 5.1 5.11 142 166 1 18 2 22 (evens), 30 Method Example 1. This is of a main() method using a another method, f. public class FirstMethod
More informationBuilding Java Programs
Building Java Programs Chapter 5 Lecture 5-1: while Loops, Fencepost Loops, and Sentinel Loops reading: 4.1, 5.1 self-check: Ch. 4 #2; Ch. 5 # 1-10 exercises: Ch. 4 #2, 4, 5, 8; Ch. 5 # 1-2 Copyright 2009
More informationTopic 3 static Methods and Structured Programming
Topic 3 static Methods and Structured Programming "The cleaner and nicer the program, the faster it's going to run. And if it doesn't, it'll be easy to make it fast." -Joshua Bloch Based on slides by Marty
More informationEntering the world of Javatar
Entering the world of Javatar Subset of the Supplement Lesson slides from: Building Java Programs by Stuart Reges and Marty Stepp (http://www.buildingjavaprograms.com/ ) Compiling/running programs 1. Write
More informationwww.thestudycampus.com Methods Let s imagine an automobile factory. When an automobile is manufactured, it is not made from basic raw materials; it is put together from previously manufactured parts. Some
More informationBuilding Java Programs
Building Java Programs Chapter 5 Lecture 5-4: do/while loops, assertions reading: 5.1, 5.5 1 The do/while loop do/while loop: Performs its test at the end of each repetition. Guarantees that the loop's
More informationAdmin. CS 112 Introduction to Programming. Recap. Example: Nested Loop. Example: Rewrite
Admin CS 112 Introduction to Programming Graphics; Animation Yang (Richard) Yang Computer Science Department Yale University 308A Watson, Phone: 432-6400 Email: yry@cs.yale.edu q Issues on PS3 NumberCoolness:
More informationSoftware 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 informationAP Computer Science A Summer Assignment 2017
AP Computer Science A Summer Assignment 2017 The objective of this summer assignment is to ensure that each student has the ability to compile and run code on a computer system at home. We will be doing
More informationBuilding Java Programs
Building Java Programs Chapter 2: Primitive Data and Definite Loops These lecture notes are copyright (C) Marty Stepp and Stuart Reges, 2007. They may not be rehosted, sold, or modified without expressed
More informationCS171:Introduction to Computer Science II
CS171:Introduction to Computer Science II Department of Mathematics and Computer Science Li Xiong 9/7/2012 1 Announcement Introductory/Eclipse Lab, Friday, Sep 7, 2-3pm (today) Hw1 to be assigned Monday,
More informationSection 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 informationSequence 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 informationITERATION WEEK 4: EXMAPLES IN CLASS
Monday Section 2 import java.util.scanner; public class W4MSection2 { ITERATION WEEK 4: EXMAPLES IN CLASS public static void main(string[] args) { Scanner input1 = new Scanner (System.in); int CircleCenterX
More informationCS 161: Object Oriented Problem Solving
CS 161: Object Oriented Problem Solving About this course Like 160 your first CS course - cs161 is a combination of programming and discrete math. Why is math important to us? What math have you learned
More informationMethods and Functions
Programming with Java Module 4 Methods and Functions Theoretical Part Contents 1 Module overview 3 2 Methods 3 2.1 Methods without return value (procedures).............. 3 2.2 Functions with return value
More informationCS-201 Introduction to Programming with Java
CS-201 Introduction to Programming with Java California State University, Los Angeles Computer Science Department Lecture X: Methods II Passing Arguments Passing Arguments methods can accept outside information
More informationCS111: PROGRAMMING LANGUAGE II
1 CS111: PROGRAMMING LANGUAGE II Computer Science Department Lecture 1: Introduction Lecture Contents 2 Course info Why programming?? Why Java?? Write once, run anywhere!! Java basics Input/output Variables
More informationCh. 6. User-Defined Methods
Ch. 6 User-Defined Methods Func5onal Abstrac5on Func5onal regarding func5ons/methods Abstrac5on solving a problem in a crea5ve way Stepwise refinement breaking down large problems into small problems The
More informationCSE 143. Lecture 9: introduction to recursion reading: 12.1
CSE 143 Lecture 9: introduction to recursion reading: 12.1 Recursion recursion: The definition of an operation in terms of itself. Solving a problem using recursion depends on solving smaller occurrences
More informationCSCI 161 Introduction to Computer Science
CSCI 161 Introduction to Computer Science Department of Mathematics and Computer Science Lecture 2b A First Look at Class Design Last Time... We saw: How fields (instance variables) are declared How methods
More informationCS 302: Introduction to Programming in Java. Lecture 11 Yinggang Huang. CS302 Summer 2012
CS 302: Introduction to Programming in Java Lecture 11 Yinggang Huang 1 Review How do we call a method? What are method inputs called? How many values can be returned from a method? Write a method header
More information