Warm-Up: COMP Programming with Iterations 1
|
|
- Naomi Terry
- 5 years ago
- Views:
Transcription
1 Warm-Up: Suppose I have a method with header: public static boolean foo(boolean a,int b) { if (a) return true; return b > 0; Which of the following are valid ways to call the method and what is the result? int x = foo(true, 3 + 4); System.out.println(foo(!true, -10)); System.out.println(foo(true && false, 1.0 / 2)); System.out.println(foo(foo(false,0), (int)1.0 / 2)); boolean a = foo(foo(false true, 3), -10); COMP Programming with Iterations 1
2 Part 5: Boolean Expressions -- (a.k.a. the things you put in if statements and other things as conditions)
3 Boolean Expressions The year is > true There are 15 months in a year ----> false September is the 9 th month AND it is 2 months before February ---> false The Rangers were stupid to get rid of Jaromir Jagr -----> true Pirates helped stop global warming---> true??? Comp-202 is awesome ---->??????? COMP Programming Basics 3
4 Boolean Expressions Instead of evaluating to a numeric value, boolean expressions evaluate to either true or false mynumber > 0 // can be either true or false You can assign the result of a boolean expression to a variable of type boolean: boolean positive; positive = (mynumber > 0); COMP Programming Basics 4
5 Expressions in general An expression is one of the following A literal value (e.g. 10, 10.0, 10.0f, 'c', foo ) A variable (e.g. x, foo, whatever) A call to a method that returns a value (e.g. Math.pow(3,4)) A combination of other expressions using operators such as +,-,/, etc COMP Conditional Programming 5
6 Boolean Expressions in Java A boolean expression is a specific sort of these expressions. There are several ways to form boolean expressions. A boolean literal value ( true or false) A variable of type boolean (e.g. x, foo, whatever) A call to a method that returns a boolean value A combination of other expressions using operators: Comparison operators (take numbers and return boolean) Boolean operators (take booleans and return boolean) COMP Conditional Programming 6
7 Comparison Operators (1) The result of a comparison is always true or false Used to compare numeric or character values == : equal to!= : not equal to < : less than > : greater than <= : less than or equal to >= : greater than or equal to COMP Conditional Programming 7
8 Comparison Operators (2) int x = 5; x < > true x <= 5; ----> true x > 5 ---> false x >= 3 ---> true x == > true x!= 5 ---> false COMP Conditional Programming 8
9 Comparison Operators (3) Equality (==) and inequality (!=) operators apply to values that have any type The other comparison operators (<, <=, >, >=) only apply to values which have a numeric type (byte, short, int, long, float, double) or that have type char If the operands of a comparison operator have different types, the operand whose type has lower precision gets promoted to the other operand's type COMP Conditional Programming 9
10 Comparing Strings When you want to compare two Strings to each other, you will not use = = Instead you will call a method on each String. String one = a String ; String two = a different String ; boolean areequal = one.equals(two); We will see when we talk about references when you should use.equals() and when you should use = =. For primitive types like int, always use ==, for String it's almost always best to use.equals() COMP Conditional Programming 10
11 Comparing char In Java, each character (like '?' or 'm') is associated with a number. The following expression evaluates to true because the number assigned to the character '+' by the Unicode character set is lower than the number assigned to the character 'J' by the same character set: boolean lessthan = '+' < 'J'; Do not hesitate to use this property of characters in your programs. COMP Conditional Programming 11
12 Unicode Chart symbols Associated numbers Notice that A-Z are 26 codes In a row, as are a-z, and 0-9 are 10 codes in a row. This means to check a char Is uppercase you could check If the code is between 'A' And 'Z' COMP Conditional Programming 12
13 Character Comparisons The unicode number system is well designed. The 26 lowercase letters are all in a row. The 26 uppercase letters are also in a row. Note that there is a gap between the two. This means that 'a' < 'c' ----> true. COMP Conditional Programming 13
14 Floating Point Comparisons You should rarely use the equality operator (==) when comparing two floating point values (float or double) In many situations, you might consider two floating point numbers to be "close enough" even if they aren't exactly equal This is often necessary due to rounding issues. COMP Conditional Programming 14
15 Floating Point Comparisons: Example // Assuming f1 >= f2 difference = f1 - f2; boolean essentiallyequal = difference < ; COMP Conditional Programming 15
16 Creating boolean expressions from other boolean expressions Boolean expressions can also use the following logical operators:! Logical NOT Logical OR && Logical AND All three operators take operands of type boolean and produce results of type boolean That is, the input to the operator is boolean(s) and the output is a boolean. COMP Conditional Programming 16
17 ! operator The! operator refers to not It takes as input one boolean expression and flips the result. So if the boolean expression was true before, then it is false now. COMP Conditional Programming 17
18 ! operator examples! (2 < 3) > false (since 2 < 3)! (3 < 2) -----> true! true > false! false > true! (! (3 > 2)) ---> true!(september comes after August) ---> false!(earth is the 6 th planet from the sun) ---> true!(the Rangers are stupid for getting rid of Jagr) ---> false COMP Conditional Programming 18
19 && operator The && operator refers to and It takes as input two boolean expressions. The result of this operator is true if both operands are true and false if at least one of the operands is false. COMP Conditional Programming 19
20 && operator 1 < 2 && 2 < > true 1 < 1 && 2 < > false! (1 < 1) && 2 < > true (Television starts with a T) && (Java can also be coffee) --> true COMP Conditional Programming 20
21 operator The operator refers to or It takes as input two boolean expressions. The result of this operator is true if at least one of the operands is true and false if at both of the operands are false. Note that the or is NOT exclusive. This means if both operands are true the result will be true. COMP Conditional Programming 21
22 operator examples 1 < 1 2 < > true! (3 < > 1000 ) ---> false (Vegetables are healthy) (Fruit is healthy) ---> true COMP Conditional Programming 22
23 How The Java Compiler Evaluates && and If left operand of a && expression evaluates to false, the remaining operands are not evaluated In p1 && p2, if p1 is false, p2 is never looked at. If left operand of a expression evaluates to true, the remaining operands are not evaluated In p1 p2, if p1 is true, p2 is never looked at. This is called short-circuit evaluation. COMP Conditional Programming 23
24 Aside: How The Java Compiler Evaluates && and This is useful in the following case. Suppose you have an int variable x and you aren't sure if x is equal to zero or not. if ( x!= 0 && 1 / x < 5 ) COMP Conditional Programming 24
25 A bit on clean code using boolean expessions boolean tall = height > 6.0; if(tall == true) x = 5; The above is not needed. Remember that the if statement always checks if the condition is true. So if (tall) tests is tall true if (tall == true) tests is it true that tall is equal to true, which is the same thing. COMP Conditional Programming 25
26 Careful... boolean tall = height > 6.0; if(tall = true) x = 5; This sets tall to true, so x = 5 always executes, regardless of the value of height. This is a logical error: compiler will not detect it! COMP Conditional Programming 26
27 Exercise: Complete the main() method of the MinOfThree class by adding code which determines which of the three numbers entered by the user is the smallest number, and displays that number COMP Conditional Programming 27
28 MinOfThree.java import java.util.scanner; public class MinOfThree { public static void main(string[] args) { Scanner keyboard = new Scanner(System.in); int num1, num2, num3, min; System.out.print("Enter a number: "); num1 = keyboard.nextint(); System.out.print("Enter another number: "); num2 = keyboard.nextint(); System.out.print("Enter a third number: "); num3 = keyboard.nextint(); // Add your code here COMP Conditional Programming 28
29 Advanced Conditional Statements (not examinable) 1) The switch statement 2) The conditional operator
30 The Conditional Operator condition? expression1 : expression2 If condition evaluates to true, then expression1 is evaluated; if it evaluates to false, then expression2 is evaluated COMP Conditional Programming 30
31 Conditional Operator Examples larger = (num1 > num2)? num1 : num2; If num1 is greater that num2, then num1 is assigned to larger; otherwise, num2 is assigned to larger COMP Conditional Programming 31
32 Conditional operator vs. if-else The conditional operator is like an if-else statement, except that instead of executing one of two possible branches, it evaluates to one of two possible values. larger = (num1 > num2)? num1 : num2;...is the same as: if (num1 > num2) larger = num1; else larger = num2; COMP Conditional Programming 32
33 Conditional Operator Examples System.out.println ("Your change is " + count + " dime" + ((count == 1)? "" : "s")); If count evaluates to 1, then "dime" is printed If count evaluates to any value other than 1, then an "s" is added at the end of "dime" COMP Conditional Programming 33
34 Usefulness: Variable scope if (x < 0) { int absolutevalue = -x; else { int absolutevalue = x; //We can't use variable absolutevalue //here because we finished the { // it was declared in. COMP Conditional Programming 34
35 Usefulness: Variable scope int absolutevalue; if (x < 0) { absolutevalue = -x; else { absolutevalue = x; //Now we can use absolutevalue but //it's less clean To make sure //it got set, we need to remember both if/else COMP Conditional Programming 35
36 Solution 1: Use/write a method int absolutevalue = Math.abs(x); //Great when the method already exists! COMP Conditional Programming 36
37 Solution 2: Use conditional operator int absolutevalue = x < 0? -x : x; Another example: public static double myabsolutevalue(double x) { return x < 0? -x : x; COMP Conditional Programming 37
38 COMP-202 Unit 4: Programming with Iterations Doing the same thing again and again and again and again and again and again and again and again and again... CONTENTS: While loops Class (static) variables and constants Top Down Programming For loops Nested Loops
39 Repetition Statements Repetition statements allow us to execute a block of code or (set of) statement(s) multiple times; -These statements are normally called loops COMP Programming with Iterations 39
40 Repetition Statements in Java -Java has two main kinds of repetition statements: the while loop and the for loop - While and for loops are equivalent However, in certain circumstances, choosing one of these statements over the other results in a program that is easier to understand. COMP Programming with Iterations 40
41 Part 1: While loops
42 Recall : If statement if (condition) { //some code here... //code here happens regardless COMP Programming with Iterations 42
43 Recall : If statement if (condition) { //some code here... //code here happens regardless An if statement defines a block of code. COMP Programming with Iterations 43
44 Recall : If statement if (condition) { //some code here... //code here happens regardless We test a condition which can be any boolean expression. COMP Programming with Iterations 44
45 Recall : If statement if (condition) { //some code here... //code here happens regardless If the condition evaluates to true then we execute the block of code once. Otherwise we do not. COMP Programming with Iterations 45
46 Benefits of If Statements We can perform actions or commands some of the time but not all. Forces us to organize things : Certain events will only happen in one case. This creates a clear division. COMP Programming with Iterations 46
47 Doing the same thing many times Sometimes, we will want to execute the same block of code many times. How can we do that? COMP Programming with Iterations 47
48 Copy / Paste The naïve thing to do is copy paste your code. What are some problems with this? COMP Programming with Iterations 48
49 Copy / Paste 1)Annoying : Who wants to copy / paste that much 2)Error prone : Easy to make a mistake 3)Difficult to maintain : Hard to edit or fix mistakes (you have to edit the same code many times which can lead to more errors) 4)What if you don't know ahead of time how many steps you need? COMP Programming with Iterations 49
50 while loops In Java, we can create a while loop. A while loop is a statement that defines a block of code that continues to execute until a condition is false. COMP Programming with Iterations 50
51 if statement vs while loop if (condition) { //block of code //Go here //no matter what while (condition) { //block of code //Go here //only after //condition is false COMP Programming with Iterations 51
52 Syntax difference Syntactically, the only difference between a while loop and an if statement is the word while instead of if. The effect of this change is that the block of code continues to be repeated as long as condition is evaluated to be true. COMP Programming with Iterations 52
53 Example of a while loop int x = 0; while (x < 4) { System.out.println( I have to write + this over and over. ); x++; COMP Programming with Iterations 53
54 Example of a while loop int x = 0; while (x < 4) { System.out.println( I have to write + this over and over. ); x++; The purpose of the variable x here is to act as a loop counter It keeps track of how many times the loop has executed COMP Programming with Iterations 54
55 Example of a while loop int x = 0; while (x < 4) { System.out.println( I have to write + this over and over. ); x++; Initially, we set the variable x equal to 0. This means the first time we check the condition x < 4, the condition is true, so we execute the loop body. COMP Programming with Iterations 55
56 Example of a while loop int x = 0; while (x < 4) { System.out.println( I have to write + this over and over. ); x++; Next, we execute the loop body, which first involves printing to the screen. COMP Programming with Iterations 56
57 Example of a while loop int x = 0; while (x < 4) { System.out.println( I have to write + this over and over. ); x++; The next command of the loop body is increment x. This gives x the value of 1. COMP Programming with Iterations 57
58 Example of a while loop int x = 0; while (x < 4) { System.out.println( I have to write + this over and over. ); x++; Once the loop body finishes at the, the condition is then rechecked. Since x = 1 and 1 < 4, the block of code happens again. COMP Programming with Iterations 58
59 Example of a while loop int x = 0; while (x < 4) { System.out.println( I have to write + this over and over. ); x++; This procedure happens 2 more times. On the 4 th step, we test the condition and x = 3. Then after printing and adding 1 to x, x is now 4. COMP Programming with Iterations 59
60 Example of a while loop int x = 0; while (x < 4) { System.out.println( I have to write + this over and over. ); x++; If x == 4, then the condition is false, so we exit the loop and resume the code after the loop block has finished. COMP Programming with Iterations 60
61 Definition: iteration An iteration is a single execution of the instructions in the loop body. The previous loop had 4 iterations. One each for x=0, x=1, x=2, x=3
62 Important Clarification The condition of the while loop is only evaluated 1 time per step or iteration of the loop right before the block of code executes. The significance of this is if the condition changes inside the loop, the loop will keep going. COMP Programming with Iterations 62
63 Important Clarification int x = 0; while (x < 4) { x = x + 10; System.out.println( x is now 10 ); x = x - 10; x++; COMP Programming with Iterations 63
64 Important Clarification int x = 0; while (x < 4) { x = x + 10; System.out.println( x is now 10 ); x = x - 10; x++; Although x = 10 at this point, the loop condition is not tested until later, when x=1 again COMP Programming with Iterations 64
65 Practice Exercise: Figure out what the following loop does. int i = 0; while (i < 100) { if ( i % 3 == 0) { System.out.println(i); i++; COMP Programming with Iterations 65
66 What will this loop do? int x = 0; while (x < 4) { System.out.println(x); COMP Programming with Iterations 66
67 It goes on forever! The above is what is known as an infinite loop It will go on forever because we never change the value of x, which will always be less than 4 We will keep printing 0 to the screen. This is known as an infinite loop COMP Programming with Iterations 67
68 Tangent: Halting Problem (1) Alan Turing investigated the problem of: Given a computer program, can you detect if there is an infinite loop in it. He proved that you can not write a computer program to test definitively whether any computer program has an infinite loop. You'll know if the program ends, but not if it has an infinite loop COMP Programming with Iterations 68
69 Tangent: Halting Problem (2) This seems like a useless thing to prove, but it has consequences: 1)Philosophically, computers can't solve everything 2)Sometimes, we can take a more useful problem and prove that we can't solve it either, because if we could, then we'd be able to solve the Halting Problem COMP Programming with Iterations 69
70 One command while loops Like if statements, if you put a command following the while loop without a {, it will only include 1 line in your loop. -A very bad thing to do: int x = 0; while (x < 4); { // this is an infinite loop now! x++ COMP Conditional Programming 70
71 How many iterations does the following loop consist of? int x = 4; while (x > 4) { System.out.println( I have to write + this over and over. ); x++;
72 How many iterations does the following loop consist of? int x = 4; while (x > 4) { System.out.println( I have to write + this over and over. ); x++; 0 iterations because x is not > 4 at the beginning
73 How many iterations does the following int x = 6; loop consist of? while (x > 4) { System.out.println( I have to write + this over and over. ); x--;
74 How many iterations does the following int x = 6; loop consist of? while (x > 4) { System.out.println( I have to write + this over and over. ); x--; 2 iterations : 1 for x = 6, 1 for x = 5
75 How many iterations does the following int x = 6; loop consist of? while (x > 4) { System.out.println( I have to write + this over and over. ); x++;
76 How many iterations does the following int x = 6; loop consist of? while (x > 4) { System.out.println( I have to write + this over and over. ); x++; Infinite! x starts out equal to 6, we check if it is less than
77 How many iterations does the following int x = 3; loop consist of? while (x < 11) { System.out.println( I have to write + this over and over. ); x += 2;
78 How many iterations does the following int x = 3; while (x < 11) { System.out.println( I have to write + this over and over. ); x += 2; 4 iterations: x=3, x=5, x=7, x=9 loop consist of?
79 Off-By-One Errors It is a common logical error or bug to write loop conditions that result in the loop body being executed one time too few, or one time too many You should always test your code to check that your loops conditions do not cause such errors. COMP Programming with Iterations 79
80 Off-By-One Errors Example //this code is supposed to print all positive //values of x up until 5: int x = 1; while (x < 5) { System.out.println(x); x++; COMP Programming with Iterations 80
81 Off-By-One Errors Example The problem is the last iteration is x = 4. We should change the condition to: (x <= 5) OR (x < 6) COMP Programming with Iterations 81
82 Off-By-One Errors Tips To avoid off by one errors, you should always manually confirm the first step of a loop as well as the last step of a loop. Make sure the numbers are what you are expecting. COMP Programming with Iterations 82
83 General loop tips Try to think of exactly what it is that you want to do over and over again Figure out the range of values you want to try again and again. Is the loop counter also used in the computation? Make sure that your loop starts or initializes with the right result Make sure that your loop terminates with the correct result COMP Programming with Iterations 83
84 xample: Print every integer from 1 to n int i = 1; while (i <= n) { System.out.println(i); i++; COMP Programming with Iterations 84
85 Example: Performing the same code n times If you have code that you want to perform a fixed number of times, one way to do that is with a while loop and a counter: int counter = 0; while (counter < n) { //whatever you want done counter++; COMP Programming with Iterations 85
86 Exercise: While loop In unit 3, we looked at an example where we wanted to read 10 numbers and convert all of them from Fahrenheit to Celcius. Write a program using a while loop that reads 10 numbers from the keyboard, converts them one at a time to Fahrenheit, and prints the result to the screen. (Answers on next slide: no peaking!) COMP Programming with Iterations 86
87 import java.util.scanner; public class FahrenheitConverter { public static final double NUM_CONVERSIONS = 10; public static void main(string[] args) { int i = 0; Scanner reader = new Scanner(System.in); while (i < NUM_CONVERSIONS) { System.out.println(convertToCelcius(reader.nextInt())); i++; public static double converttocelcius(double fahrenheit){ return (fahrenheit 32.0) * 5.0 / 9.0; COMP Programming with Iterations 87
88 art 2: Class Variables and Constants
89 Class Constants (final) Very often, you will have a constant that you want to use throughout your entire class in many different methods. -Improves readability -Avoid errors -Easier to maintain Remember that we can declare a constant the same way as a variable, except we add the word final before the type. COMP Programming with Iterations 89
90 Class Constants (final) Sometimes, you'll declare a constant inside a method as normal, but you can also declare a final static constant outside of any method, but inside of a class: public class ConstantExample { public static final int NUM_STATES = 50; public static final int NUM_PROVINCES = 10; public static void main(string[] args) {... COMP Programming with Iterations 90
91 Class Constants (final) Now, throughout you code you won't have mysterious magic numbers like 50 and 10 throughout your code. It's easier to say for sure which 50's refer to the number of states and which 50's refer to something entirely different. Also will be much easier if the constant changes over time for whatever reason. COMP Programming with Iterations 91
92 Scope of variables and constants Remember, that any time you create a variable or constant, it's scope is only within the block of code it was declared in. This means that anywhere inside that block of code, the variable or constant is available and outside the block it is not. COMP Programming with Iterations 92
93 Scope of variables and constants public class CustomerService { public static final String COMPANY_NAME = Videotron ; public static void answercall() { System.out.print( Your call is very important to us. +Please stay on the line and a ); System.out.println( COMPANY_NAME + representative will be with your shortly ); public static void humanpicksup() { System.out.print( You owe + COMPANY_NAME + money for random ); System.out.println( surcharges. We hope you'll continue to enjoy our service. ); waitforswearing(); //The identifier COMPANY_NAME is now available throughout your entire class // CustomerService COMP Programming with Iterations 93
94 Scope of class variables public class Scope { public static String companyname = Videotron ;... Variables work the same way. This means that one thing you can do to share a variable between methods is create a variable outside of any method. In this case, you'll still want to write static. This is not generally good practice unless you know what you are doing! COMP Programming with Iterations 94
95 Class Variables These sorts of variables (or constants) are known as class variables (or class constants). They are called this because they belong to the entire class as opposed to one method. COMP Programming with Iterations 95
96 Example of bad use of class variables import java.util.scanner; public class BadFahrenheitConversion { public static double degrees = 0.0; public static Scanner reader = new Scanner(System.in); public static void main(string[] args) { degrees = reader.nextdouble(); converttocelcius(); System.out.println(degrees); public static void converttocelcius() { degrees = (degrees 32.0) * 5.0 / 9.0; COMP Programming with Iterations 96
97 Problems with this: Leads to bugs! 1)The variable degrees is used for different purposes (first it is fahrenheit then it is degrees) Confusing! 2)The method converttocelcius() has a side effect which is unexpected. 3)The code is not reusable. What if you copied this into a different program that already had a variable degrees defined? 4)Because you are doing 2 things with 1 variable, the print statement could be separated from when the value is set. 5)reader can be used by a different method and the main() method wouldn't know. COMP Programming with Iterations 97
98 Better (no class variables) import java.util.scanner; public class BadFahrenheitConversion { public static void main(string[] args) { Scanner reader = new Scanner(System.in); double fahrenheitdegrees = reader.nextdouble(); double celciusdegrees = converttocelcius(fahrenheitdegrees); System.out.println(celciusDegrees); public static double converttocelcius(double degrees) { return (degrees 32.0) * 5.0 / 9.0; COMP Programming with Iterations 98
99 Static constants Static constants do not normally have this problem since their values don't change. There are still cases where it is better to pass a constant to a method rather than use it. We will see later on that there are indeed times to create static variables, but for starters we should not use static variables and should only use static constants with simple types (i.e. int, double, float, boolean, etc. String is OK too despite the capital S) COMP Programming with Iterations 99
100 Part 3: Top Down Programming
101 Example A prime number is a positive integer >= 2 whose only divisors are 1 and itself. Write a method that calculates whether a number is prime or not using a while loop. The method should take as input an int and return a boolean value of true if the number is prime and false otherwise. COMP Programming with Iterations 101
102 Steps to solve this: First, you should figure out the input and the output of the method. This is normally given in this course, sometimes in words, sometimes in Java terminology With this knowledge, you can write the method header. If this step is not easy, then you need to think about the problem more to understand what it is you are trying to solve! COMP Programming with Iterations 102
103 Steps to solve this: public static boolean isprime(int n) { COMP Programming with Iterations 103
104 Steps to solve this: The next thing to figure out is an algorithm to solve the problem. This is not always easy. In the case of prime numbers, how can we figure out if a number n is prime (if we were doing it by hand)? COMP Programming with Iterations 104
105 Steps to solve this: 1)Check every number from 2 up until n 1. 2)If any of these numbers evenly divide n (i.e. are factors of n), then n is not prime 3)If none of them divide n, then n is prime COMP Programming with Iterations 105
106 Steps to solve this: 1)Check every number from 2 up until n 1. 2)If any of these numbers evenly divide n (i.e. are factors), then n is not prime 3)If none of them divide n, then n is prime The word every strongly implies you'll need some sort of loop. COMP Programming with Iterations 106
107 Steps to solve this: 1)Check every number from 2 up until n 1. 2)If any of these numbers evenly divide n (i.e. are factors), then n is not prime 3)If none of them divide n, then n is prime The if means we'll need some sort of if statement. n not equals prime is our conclusion and in Java will translate to a return statement with the value false COMP Programming with Iterations 107
108 Steps to solve this: 1)Check every number from 2 up until n 1. 2)If any of these numbers evenly divide n (i.e. are factors), then n is not prime 3)If none of them divide n, then n is prime One thing to be very careful of is that none means we have to check ALL of the numbers to make the conclusion. COMP Programming with Iterations 108
109 Now lets analyze each step in detai 1)Check every number from 2 up until n 1. 2)If any of these numbers evenly divide n (i.e. are factors), then n is not prime 3)If none of them divide n, then n is prime We know how to do something for every number. We know the code for printing every number from 1 to n. We just have to modify it to go from 2 until n-1 and to do other stuff instead of print! COMP Programming with Iterations 109
110 Steps to solve this: 1)Check every number from 2 up until n 1. 2)If any of these numbers evenly divide n (i.e. are factors), then n is not prime 3)If none of them divide n, then n is prime How can we check if a number x evenly divides n? COMP Programming with Iterations 110
111 Steps to solve this: How can we check if a number x evenly divides n? 1)Use int division. If x / n * n is equal to x, then x must be a multiple of n. Otherwise, we'd have lost information on the division. ex: 6 / 3 * 3 = 6 (6 is a multiple of 3) 5 / 3 * 3 = 3 (since 5 / 3 = 1 in integer division) 2)Use modulo % operator. x % n == 0 if x is a multiple of n. (ex: 48 hours after midnight is 0:00, since 48 is a multiple of 24) COMP Programming with Iterations 111
112 Solution public static boolean isprime(int n) { int x = 2; while (x < n) { if (n % x == 0) { return false; x++; return true; COMP Programming with Iterations 112
113 Even better solution public static boolean isprime(int n) { if (n < 2) { return false; int x = 2; while (x < n) { if (n % x == 0) { return false; x++; return true; COMP Programming with Iterations 113
114 Careful not to make this mistake! public static boolean isprime(int n) { if (n < 2) { return false; int x = 2; while (x < n) { if (n % x == 0) { return false; else { return true; x++; COMP Programming with Iterations 114
115 Careful not to make this mistake! public static boolean isprime(int n) { if (n < 2) { return false; int x = 2; while (x < n) { if (n % x == 0) { return false; else { return true; /* This code returns true if the first number for x (2) isn't a factor of n*/ x++; COMP Programming with Iterations 115
116 Top Down Programming The way we solved this problem is using a technique called topdown programming. We started out with a big goal (determine if a number is prime) Then we looked at the various steps we needed to solve that. (loop through all numbers, check conditions, return statement) We then examined how to solve those various steps (counter + while loop, % operator) COMP Programming with Iterations 116
117 Exercise Now that you have a method isprime, write another method printprimes. Your method should take as input an int n and return void. Your method should then print the first n prime numbers. When you write this method, for practice with taking an exam, try to write it on a piece of paper (or without seeing what the computer does). When you do this, call the method isprime(). But try not to think about how the method isprime() works. Focus only on what it does. COMP Programming with Iterations 117
118 Part 4: The for Statement
119 Common loop theme Very often in loops, one will do 3 things: 1)Perform some initialization before the loop starts. 2)Check a condition before an iteration of the loop starts. 3)Perform some finalization at the end of each iteration. COMP Programming with Iterations 119
120 Example loop int x = 0; //initialization while (x < 4) //condition { System.out.println(x); x++; //finalization at the end of each step COMP Programming with Iterations 120
121 for loop As this theme was so commonly used, Java added a for loop. A for loop is mostly the same as a while loop, but it adds as part of the for loop syntax an initialization and finalization step. for (initialization; condition; finalization) { //loop body COMP Programming with Iterations 121
122 for loop for (initialization; condition; finalization) { //loop body The initialization step happens once per loop. It happens right before the first step of the for loop COMP Programming with Iterations 122
123 for loop for (initialization; condition; finalization) { //loop body The condition is checked before each iteration of the loop. This is the same as in a while loop. COMP Programming with Iterations 123
124 for loop for (initialization; condition; finalization) { //loop body The finalization happens at the very end of every iteration of the loop. COMP Programming with Iterations 124
125 for loop for (int i = 0; i < 4; i++) { System.out.println(i); This does the same as the while loop prior. It prints the numbers 0,1,2,3 COMP Programming with Iterations 125
126 for loop vs while loop for (int i = 0; i < 4; i++) { System.out.println(i); int i = 0; while (i < 4) { System.out.println(i); i++; COMP Programming with Iterations 126
127 Benefit of for loop for loops are more readable than while loops in some cases. For example, in the previous case, it is obvious when looking at the statement int i = 0; that the statement is part of the loop. In the case of the while loop it isn't as obvious. COMP Programming with Iterations 127
128 Accidental error in while loop int x = 0; while (x < 4) { System.out.println(x); x++; Here it is not quite as obvious that int x = 0; is related to the loop. This means you or someone else could carelessly separate the 2 parts and cause a mistake (for example while copying and pasting) COMP Programming with Iterations 128
129 Benefit of while loop Typically, one chooses a while loop over a for loop if there is an indefinite number of iterations one wants to execute. For example, if you wanted to continue to do something until a certain event occurs. This translates better with a while loop because you don't have a loop counter anyway. COMP Programming with Iterations 129
130 Benefit of while loop int lastleafcupchampionship = 1967; while (lastleafcupchampionship == 1967) { System.out.println( Wow, even the Rangers are better. ); COMP Programming with Iterations 130
131 Infinite loop? int lastleafcupchampionship = 1967; while (lastleafcupchampionship == 1967) { System.out.println( Wow, even the Rangers are better. ); COMP Programming with Iterations 131
132 Treating a for loop like a while loop The statements in a for loop header can be anything including the empty statement: int x = 0; for (; x < 4; ) { System.out.println(x); x++; COMP Programming with Iterations 132
133 COMP Programming with Iterations 133
134 Exercise: Rewrite the isprime() method that we wrote to use a for loop instead of a while loop. Rewrite the printprimes() method as well. COMP Programming with Iterations 134
135 Part 5: Nested Loops
136 Nested Loops Sometimes, we will put a loop inside of a loop. When this happens...sometimes our brain is tied in a bit of a knot (buda-dum-dum-chi) COMP Programming with Iterations 136
137 Example : Print coordinate table Suppose we want to print all non-negative combinations of x and y in a grid. We can use 1 for loop inside another to do this. COMP Programming with Iterations 137
138 Example : Print coordinate table First, think about y being fixed. For any given y, if I want to print a range of x's, I can do this using a for loop. int y = 1; for (int x = 0; x < 10; x++) { System.out.print( ( + y +, + x + ), ); System.out.print( \n ); COMP Programming with Iterations 138
139 Example : Print coordinate table int y = 1; for (int x = 0; x < 10; x++) { System.out.print( ( + y +, + x + ), ); System.out.print( \n ); We know that this code will loop over x from 0 up until and including 9, and print: (1,0), (1,1), (1,2), (1,3), (1,4), (1,5), (1,6), (1,7), (1,8), (1,9) COMP Programming with Iterations 139
140 Example : Print coordinate table Now, I want to do this for every y from 0 to 10 as well. So we need to replace the y = 1 part with a loop that changes the value of y. COMP Programming with Iterations 140
141 Example : Print coordinate table for (int y = 0; y < 10; y++) { for (int x = 0; x < 10; x++) { System.out.print( ( + y +, + x + ), ); System.out.print( \n ); COMP Programming with Iterations 141
142 Using constants for (int y = 0; y < 10; y++) { for (int x = 0; x < 10; x++) { System.out.print( ( + y +, + x + ), ); System.out.print( \n ); It's better to replace the number 10 with a constant describing why we are using the number 10. It may be as simple as NUM_Y_COORDS, but it should be something COMP Programming with Iterations 142
143 Using constants final int VERTICAL_SIZE = 10; //could also be class constants? final int HORIZONTAL_SIZE = 10; for (int y = 0; y < VERTICAL_SIZE; y++) { for (int x = 0; x < HORIZONTAL_SIZE; x++) { System.out.print( ( + y +, + x + ), ); System.out.print( \n ); COMP Programming with Iterations 143
144 Exercise: Rewrite the above code using: 1)a while loop on the outside and a for loop on the inside 2)a for loop on the outside and a while loop on the inside 3)2 while loops COMP Programming with Iterations 144
CONTENTS: While loops Class (static) variables and constants Top Down Programming For loops Nested Loops
COMP-202 Unit 4: Programming with Iterations Doing the same thing again and again and again and again and again and again and again and again and again... CONTENTS: While loops Class (static) variables
More informationCOMP-202 Unit 4: Programming with Iterations
COMP-202 Unit 4: Programming with Iterations Doing the same thing again and again and again and again and again and again and again and again and again... CONTENTS: While loops Class (static) variables
More informationWarmup : Name that tune!
Warmup : Name that tune! Write, using a loop, Java code to print the lyrics to the song 99 Bottles of Beer on the Wall 99 bottles of beer on the wall. 99 bottles of beer. Take one down, pass it around,
More informationWarm up Exercise. What are the types and values of the following expressions: * (3 + 1) 3 / / 2.0 (int)1.0 / 2
Warm up Exercise What are the types and values of the following expressions: 3.0+4 * (3 + 1) 3 / 2 + 1.0 1.0 / 2.0 (int)1.0 / 2 COMP-202 - Programming Basics 1 Warm up Exercise What are the types and values
More informationWarm-up: What type of variable should we create to store the following information:
Warm-up: What type of variable should we create to store the following information: The number of school days in a year. The cost of a meal at a restaurant The number of minutes you will spend on COMP-202
More informationCOMP-202 Unit 2: Java Basics. CONTENTS: Using Expressions and Variables Types Strings Methods
COMP-202 Unit 2: Java Basics CONTENTS: Using Expressions and Variables Types Strings Methods Assignment 1 Assignment 1 posted on WebCt and course website. It is due May 18th st at 23:30 Worth 6% Part programming,
More informationCOMP-202: Foundations of Programming. Lecture 3: Boolean, Mathematical Expressions, and Flow Control Sandeep Manjanna, Summer 2015
COMP-202: Foundations of Programming Lecture 3: Boolean, Mathematical Expressions, and Flow Control Sandeep Manjanna, Summer 2015 Announcements Slides will be posted before the class. There might be few
More informationCOMP-202: Foundations of Programming. Lecture 4: Flow Control Loops Sandeep Manjanna, Summer 2015
COMP-202: Foundations of Programming Lecture 4: Flow Control Loops Sandeep Manjanna, Summer 2015 Announcements Check the calendar on the course webpage regularly for updates on tutorials and office hours.
More informationCOMP-202 Unit 2: Java Basics. CONTENTS: Printing to the Screen Getting input from the user Types of variables Using Expressions and Variables
COMP-202 Unit 2: Java Basics CONTENTS: Printing to the Screen Getting input from the user Types of variables Using Expressions and Variables Part 1: Printing to the Screen Recall: HelloWorld public class
More informationConditional Programming
COMP-202 Conditional Programming Chapter Outline Control Flow of a Program The if statement The if - else statement Logical Operators The switch statement The conditional operator 2 Introduction So far,
More informationCOMP-202 Unit 4: Programming With Iterations. CONTENTS: The while and for statements
COMP-202 Unit 4: Programming With Iterations CONTENTS: The while and for statements Introduction (1) Suppose we want to write a program to be used in cash registers in stores to compute the amount of money
More informationRepetition, Looping. While Loop
Repetition, Looping Last time we looked at how to use if-then statements to control the flow of a program. In this section we will look at different ways to repeat blocks of statements. Such repetitions
More informationCONTENTS: Compilation Data and Expressions COMP 202. More on Chapter 2
CONTENTS: Compilation Data and Expressions COMP 202 More on Chapter 2 Programming Language Levels There are many programming language levels: machine language assembly language high-level language Java,
More informationCOMP-202 Unit 2: Java Basics. CONTENTS: Printing to the Screen Getting input from the user Types of variables Using Expressions and Variables
COMP-202 Unit 2: Java Basics CONTENTS: Printing to the Screen Getting input from the user Types of variables Using Expressions and Variables Part 1: Printing to the Screen Recall: HelloWorld public class
More informationCOMP-202 Unit 2: Java Basics. CONTENTS: Printing to the Screen Getting input from the user Types of variables Using Expressions and Variables
COMP-202 Unit 2: Java Basics CONTENTS: Printing to the Screen Getting input from the user Types of variables Using Expressions and Variables Assignment 1 Assignment 1 posted on WebCt and course website.
More informationSelec%on and Decision Structures in Java: If Statements and Switch Statements CSC 121 Fall 2016 Howard Rosenthal
Selec%on and Decision Structures in Java: If Statements and Switch Statements CSC 121 Fall 2016 Howard Rosenthal Lesson Goals Understand Control Structures Understand how to control the flow of a program
More informationCOMP-202 Unit 2: Java Basics. CONTENTS: Printing to the Screen Getting input from the user Types of variables Using Expressions and Variables
COMP-202 Unit 2: Java Basics CONTENTS: Printing to the Screen Getting input from the user Types of variables Using Expressions and Variables Tutorial 0 Help with setting up your computer to compile and
More informationConditionals and Loops
Conditionals and Loops Conditionals and Loops Now we will examine programming statements that allow us to: make decisions repeat processing steps in a loop Chapter 5 focuses on: boolean expressions conditional
More informationJAVA PROGRAMMING LAB. ABSTRACT In this Lab you will learn to define and invoke void and return java methods
Islamic University of Gaza Faculty of Engineering Computer Engineering Dept. Computer Programming Lab (ECOM 2114) ABSTRACT In this Lab you will learn to define and invoke void and return java methods JAVA
More informationControl Structures in Java if-else and switch
Control Structures in Java if-else and switch Lecture 4 CGS 3416 Spring 2017 January 23, 2017 Lecture 4CGS 3416 Spring 2017 Selection January 23, 2017 1 / 26 Control Flow Control flow refers to the specification
More informationCOMP-202: Foundations of Programming. Lecture 5: More About Methods and Data Types Jackie Cheung, Winter 2016
COMP-202: Foundations of Programming Lecture 5: More About Methods and Data Types Jackie Cheung, Winter 2016 More Tutoring Help The Engineering Peer Tutoring Services (EPTS) is hosting free tutoring sessions
More informationLoops. CSE 114, Computer Science 1 Stony Brook University
Loops CSE 114, Computer Science 1 Stony Brook University http://www.cs.stonybrook.edu/~cse114 1 Motivation Suppose that you need to print a string (e.g., "Welcome to Java!") a user-defined times N: N?
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 informationChapter 3. Selections
Chapter 3 Selections 1 Outline 1. Flow of Control 2. Conditional Statements 3. The if Statement 4. The if-else Statement 5. The Conditional operator 6. The Switch Statement 7. Useful Hints 2 1. Flow of
More informationSchool of Computer Science CPS109 Course Notes 5 Alexander Ferworn Updated Fall 15
Table of Contents 1 INTRODUCTION... 1 2 IF... 1 2.1 BOOLEAN EXPRESSIONS... 3 2.2 BLOCKS... 3 2.3 IF-ELSE... 4 2.4 NESTING... 5 3 SWITCH (SOMETIMES KNOWN AS CASE )... 6 3.1 A BIT ABOUT BREAK... 7 4 CONDITIONAL
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 informationSelec%on and Decision Structures in Java: If Statements and Switch Statements CSC 121 Spring 2016 Howard Rosenthal
Selec%on and Decision Structures in Java: If Statements and Switch Statements CSC 121 Spring 2016 Howard Rosenthal Lesson Goals Understand Control Structures Understand how to control the flow of a program
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 informationControl Flow. COMS W1007 Introduction to Computer Science. Christopher Conway 3 June 2003
Control Flow COMS W1007 Introduction to Computer Science Christopher Conway 3 June 2003 Overflow from Last Time: Why Types? Assembly code is typeless. You can take any 32 bits in memory, say this is an
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 informationSchool of Computer Science CPS109 Course Notes 6 Alexander Ferworn Updated Fall 15. CPS109 Course Notes 6. Alexander Ferworn
CPS109 Course Notes 6 Alexander Ferworn Unrelated Facts Worth Remembering Use metaphors to understand issues and explain them to others. Look up what metaphor means. Table of Contents Contents 1 ITERATION...
More informationWentworth 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 informationLast Class. While loops Infinite loops Loop counters Iterations
Last Class While loops Infinite loops Loop counters Iterations public class January31{ public static void main(string[] args) { while (true) { forloops(); if (checkclassunderstands() ) { break; } teacharrays();
More informationTop-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 informationCONTENTS: Arrays Strings. COMP-202 Unit 5: Loops in Practice
CONTENTS: Arrays Strings COMP-202 Unit 5: Loops in Practice Computing the mean of several numbers Suppose we want to write a program which asks the user to enter several numbers and then computes the average
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 informationCOMP-202 Unit 9: Exceptions
COMP-202 Unit 9: Exceptions Announcements - Assignment 4: due Monday April 16th - Assignment 4: tutorial - Final exam tutorial next week 2 Exceptions An exception is an object that describes an unusual
More informationSTUDENT LESSON A12 Iterations
STUDENT LESSON A12 Iterations Java Curriculum for AP Computer Science, Student Lesson A12 1 STUDENT LESSON A12 Iterations INTRODUCTION: Solving problems on a computer very often requires a repetition of
More informationOct Decision Structures cont d
Oct. 29 - Decision Structures cont d Programming Style and the if Statement Even though an if statement usually spans more than one line, it is really one statement. For instance, the following if statements
More informationCOMP-202 Unit 9: Exceptions
COMP-202 Unit 9: Exceptions Course Evaluations Please do these. -Fast to do -Used to improve course for future. (Winter 2011 had 6 assignments reduced to 4 based on feedback!) 2 Avoiding errors So far,
More informationCOMP-202: Foundations of Programming. Lecture 8: for Loops, Nested Loops and Arrays Jackie Cheung, Winter 2016
COMP-202: Foundations of Programming Lecture 8: for Loops, Nested Loops and Arrays Jackie Cheung, Winter 2016 Review What is the difference between a while loop and an if statement? What is an off-by-one
More informationCOMP 202 Java in one week
CONTENTS: Basics of Programming Variables and Assignment Data Types: int, float, (string) Example: Implementing a calculator COMP 202 Java in one week The Java Programming Language A programming language
More informationReview. Primitive Data Types & Variables. String Mathematical operators: + - * / % Comparison: < > <= >= == int, long float, double boolean char
Review Primitive Data Types & Variables int, long float, double boolean char String Mathematical operators: + - * / % Comparison: < > = == 1 1.3 Conditionals and Loops Introduction to Programming in
More informationProgramming Constructs Overview. Method Call System.out.print( hello ); Method Parameters
Programming Constructs Overview Method calls More selection statements More assignment operators Conditional operator Unary increment and decrement operators Iteration statements Defining methods 27 October
More informationInterpreted vs Compiled. Java Compile. Classes, Objects, and Methods. Hello World 10/6/2016. Python Interpreted. Java Compiled
Interpreted vs Compiled Python 1 Java Interpreted Easy to run and test Quicker prototyping Program runs slower Compiled Execution time faster Virtual Machine compiled code portable Java Compile > javac
More informationJava Coding 3. Over & over again!
Java Coding 3 Over & over again! Repetition Java repetition statements while (condition) statement; do statement; while (condition); where for ( init; condition; update) statement; statement is any Java
More informationOutline. 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 informationCS 106 Introduction to Computer Science I
CS 106 Introduction to Computer Science I 06 / 04 / 2015 Instructor: Michael Eckmann Today s Topics Questions / comments? Calling methods (noting parameter(s) and their types, as well as the return type)
More informationCS1004: Intro to CS in Java, Spring 2005
CS1004: Intro to CS in Java, Spring 2005 Lecture #16: Java conditionals/loops, cont d. Janak J Parekh janak@cs.columbia.edu Administrivia Midterms returned now Weird distribution Mean: 35.4 ± 8.4 What
More informationRepetition CSC 121 Fall 2014 Howard Rosenthal
Repetition CSC 121 Fall 2014 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 informationCOMP 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 informationExample: Computing prime numbers
Example: Computing prime numbers -Write a program that lists all of the prime numbers from 1 to 10,000. Remember a prime number is a # that is divisible only by 1 and itself Suggestion: It probably will
More informationTOPIC 2 INTRODUCTION TO JAVA AND DR JAVA
1 TOPIC 2 INTRODUCTION TO JAVA AND DR JAVA Notes adapted from Introduction to Computing and Programming with Java: A Multimedia Approach by M. Guzdial and B. Ericson, and instructor materials prepared
More informationAlgorithms and Conditionals
Algorithms and Conditionals CSC 1051 Data Structures and Algorithms I Dr. Mary-Angela Papalaskari Department of Computing Sciences Villanova University Course website: www.csc.villanova.edu/~map/1051/
More informationPlease answer the following questions. Do not re-code the enclosed codes if you have already completed them.
Dec. 9 Loops Please answer the following questions. Do not re-code the enclosed codes if you have already completed them. What is a loop? What are the three loops in Java? What do control structures do?
More information! definite loop: A loop that executes a known number of times. " The for loops we have seen so far are definite loops. ! We often use language like
Indefinite loops while loop! indefinite loop: A loop where it is not obvious in advance how many times it will execute.! We often use language like " "Keep looping as long as or while this condition is
More informationCOMP-202B - Introduction to Computing I (Winter 2011) - All Sections Example Questions for In-Class Quiz
COMP-202B - Introduction to Computing I (Winter 2011) - All Sections Example Questions for In-Class Quiz The in-class quiz is intended to give you a taste of the midterm, give you some early feedback about
More informationProgramming with Java
Programming with Java Data Types & Input Statement Lecture 04 First stage Software Engineering Dep. Saman M. Omer 2017-2018 Objectives q By the end of this lecture you should be able to : ü Know rules
More informationSt. 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 informationWhat did we talk about last time? Examples switch statements
Week 4 - Friday What did we talk about last time? Examples switch statements History of computers Hardware Software development Basic Java syntax Output with System.out.print() Mechanical Calculation
More informationComputer Programming I - Unit 5 Lecture page 1 of 14
page 1 of 14 I. The while Statement while, for, do Loops Note: Loop - a control structure that causes a sequence of statement(s) to be executed repeatedly. The while statement is one of three looping statements
More informationObject-Oriented Programming
Object-Oriented Programming Java Syntax Program Structure Variables and basic data types. Industry standard naming conventions. Java syntax and coding conventions If Then Else Case statements Looping (for,
More informationCOMP 202. Java in one week
COMP 202 CONTENTS: Basics of Programming Variables and Assignment Data Types: int, float, (string) Example: Implementing a calculator Java in one week The Java Programming Language A programming language
More informationCondi(onals and Loops
Condi(onals and Loops 1 Review Primi(ve Data Types & Variables int, long float, double boolean char String Mathema(cal operators: + - * / % Comparison: < > = == 2 A Founda(on for Programming any program
More informationGarbage Collection (1)
Coming up: Today: Finish unit 6 (garbage collection) start ArrayList and other library objects Wednesday: Complete ArrayList, basics of error handling Friday complete error handling Next week: Recursion
More informationChapter 3: Operators, Expressions and Type Conversion
101 Chapter 3 Operators, Expressions and Type Conversion Chapter 3: Operators, Expressions and Type Conversion Objectives To use basic arithmetic operators. To use increment and decrement operators. To
More informationProgram Fundamentals
Program Fundamentals /* HelloWorld.java * The classic Hello, world! program */ class HelloWorld { public static void main (String[ ] args) { System.out.println( Hello, world! ); } } /* HelloWorld.java
More informationOutline. Overview. Control statements. Classes and methods. history and advantage how to: program, compile and execute 8 data types 3 types of errors
Outline Overview history and advantage how to: program, compile and execute 8 data types 3 types of errors Control statements Selection and repetition statements Classes and methods methods... 2 Oak A
More informationChapter 4 Lab. Loops and Files. Objectives. Introduction
Chapter 4 Lab Loops and Files Objectives Be able to convert an algorithm using control structures into Java Be able to write a while loop Be able to write a do-while loop Be able to write a for loop Be
More informationThe for Loop, Accumulator Variables, Seninel Values, and The Random Class. CS0007: Introduction to Computer Programming
The for Loop, Accumulator Variables, Seninel Values, and The Random Class CS0007: Introduction to Computer Programming Review General Form of a switch statement: switch (SwitchExpression) { case CaseExpression1:
More informationAP Computer Science Unit 1. Programs
AP Computer Science Unit 1. Programs Open DrJava. Under the File menu click on New Java Class and the window to the right should appear. Fill in the information as shown and click OK. This code is generated
More informationControl Structures in Java if-else and switch
Control Structures in Java if-else and switch Lecture 4 CGS 3416 Spring 2016 February 2, 2016 Control Flow Control flow refers to the specification of the order in which the individual statements, instructions
More informationFull file at
Java Programming: From Problem Analysis to Program Design, 3 rd Edition 2-1 Chapter 2 Basic Elements of Java At a Glance Instructor s Manual Table of Contents Overview Objectives s Quick Quizzes Class
More informationBuilding Java Programs. Chapter 2: Primitive Data and Definite Loops
Building Java Programs Chapter 2: Primitive Data and Definite Loops Copyright 2008 2006 by Pearson Education 1 Lecture outline data concepts Primitive types: int, double, char (for now) Expressions: operators,
More informationChapter 5. Repetition. Contents. Introduction. Three Types of Program Control. Two Types of Repetition. Three Syntax Structures for Looping in C++
Repetition Contents 1 Repetition 1.1 Introduction 1.2 Three Types of Program Control Chapter 5 Introduction 1.3 Two Types of Repetition 1.4 Three Structures for Looping in C++ 1.5 The while Control Structure
More informationObject-oriented programming. and data-structures CS/ENGRD 2110 SUMMER 2018
Object-oriented programming 1 and data-structures CS/ENGRD 2110 SUMMER 2018 Lecture 1: Types and Control Flow http://courses.cs.cornell.edu/cs2110/2018su Lecture 1 Outline 2 Languages Overview Imperative
More informationRepetition, Looping CS101
Repetition, Looping CS101 Last time we looked at how to use if-then statements to control the flow of a program. In this section we will look at different ways to repeat blocks of statements. Such repetitions
More informationBuilding Java Programs
Building Java Programs Chapter 2 Lecture 2-1: Expressions and Variables reading: 2.1-2.2 1 2 Data and expressions reading: 2.1 3 The computer s view Internally, computers store everything as 1 s and 0
More informationCONTENTS: Array Usage Multi-Dimensional Arrays Reference Types. COMP-202 Unit 6: Arrays
CONTENTS: Array Usage Multi-Dimensional Arrays Reference Types COMP-202 Unit 6: Arrays Introduction (1) Suppose you want to write a program that asks the user to enter the numeric final grades of 350 COMP-202
More informationCOMP-202 Unit 2: Java Basics. CONTENTS: Using Expressions and Variables Types Strings
COMP-202 Unit 2: Java Basics CONTENTS: Using Expressions and Variables Types Strings Assignment 1 Assignment 1 posted on WebCt. It will be due January 21 st at 13:00 Worth 4% Last Class Input and Output
More informationCSE 1223: Introduction to Computer Programming in Java Chapter 2 Java Fundamentals
CSE 1223: Introduction to Computer Programming in Java Chapter 2 Java Fundamentals 1 Recall From Last Time: Java Program import java.util.scanner; public class EggBasketEnhanced { public static void main(string[]
More informationMcGill University School of Computer Science COMP-202A Introduction to Computing 1
McGill University School of Computer Science COMP-202A Introduction to Computing 1 Midterm Exam Thursday, October 26, 2006, 18:00-20:00 (6:00 8:00 PM) Instructors: Mathieu Petitpas, Shah Asaduzzaman, Sherif
More informationJava I/O and Control Structures
Java I/O and Control Structures CSC 2014 Java Bootcamp Dr. Mary-Angela Papalaskari Department of Computing Sciences Villanova University Some slides in this presentation are adapted from the slides accompanying
More informationIteration statements - Loops
Iteration statements - Loops : ) הוראות חזרה / לולאות ( statements Java has three kinds of iteration WHILE FOR DO... WHILE loop loop loop Iteration (repetition) statements causes Java to execute one or
More informationBuilding Java Programs
Building Java Programs Chapter 2 Lecture 2-1: Expressions and Variables reading: 2.1-2.2 1 Data and expressions reading: 2.1 self-check: 1-4 videos: Ch. 2 #1 2 Data types type: A category or set of data
More informationChapter 4: Conditionals and Loops
Chapter 4: Conditionals and Loops CS 121 Department of Computer Science College of Engineering Boise State University August 21, 2017 Chapter 4: Conditionals and Loops CS 121 1 / 69 Chapter 4 Topics Flow
More informationCONTENTS: What Is Programming? How a Computer Works Programming Languages Java Basics. COMP-202 Unit 1: Introduction
CONTENTS: What Is Programming? How a Computer Works Programming Languages Java Basics COMP-202 Unit 1: Introduction Announcements Did you miss the first lecture? Come talk to me after class. If you want
More informationComputational Expression
Computational Expression Variables, Primitive Data Types, Expressions Janyl Jumadinova 28-30 January, 2019 Janyl Jumadinova Computational Expression 28-30 January, 2019 1 / 17 Variables Variable is a name
More informationPRIMITIVE VARIABLES. CS302 Introduction to Programming University of Wisconsin Madison Lecture 3. By Matthew Bernstein
PRIMITIVE VARIABLES CS302 Introduction to Programming University of Wisconsin Madison Lecture 3 By Matthew Bernstein matthewb@cs.wisc.edu Variables A variable is a storage location in your computer Each
More informationBuilding Java Programs
Building Java Programs Chapter 2 Lecture 2-1: Expressions and Variables reading: 2.1-2.2 Copyright 2009 by Pearson Education Data and expressions reading: 2.1 self-check: 1-4 videos: Ch. 2 #1 Copyright
More informationTopics. Chapter 5. Equality Operators
Topics Chapter 5 Flow of Control Part 1: Selection Forming Conditions if/ Statements Comparing Floating-Point Numbers Comparing Objects The equals Method String Comparison Methods The Conditional Operator
More informationData and Variables. Data Types Expressions. String Concatenation Variables Declaration Assignment Shorthand operators. Operators Precedence
Data and Variables Data Types Expressions Operators Precedence String Concatenation Variables Declaration Assignment Shorthand operators Review class All code in a java file is written in a class public
More informationOver and Over Again GEEN163
Over and Over Again GEEN163 There is no harm in repeating a good thing. Plato Homework A programming assignment has been posted on Blackboard You have to convert three flowcharts into programs Upload the
More informationCOMP-202: Foundations of Programming. Lecture 2: Variables, and Data Types Sandeep Manjanna, Summer 2015
COMP-202: Foundations of Programming Lecture 2: Variables, and Data Types Sandeep Manjanna, Summer 2015 Announcements Midterm Exams on 4 th of June (12:35 14:35) Room allocation will be announced soon
More informationComputer Science is...
Computer Science is... Bioinformatics Computer scientists develop algorithms and statistical techniques to interpret huge amounts of biological data. Example: mapping the human genome. Right: 3D model
More informationcis20.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 informationProgram Development. Java Program Statements. Design. Requirements. Testing. Implementation
Program Development Java Program Statements Selim Aksoy Bilkent University Department of Computer Engineering saksoy@cs.bilkent.edu.tr The creation of software involves four basic activities: establishing
More informationTopic 4 Expressions and variables
Topic 4 Expressions and variables "Once a person has understood the way variables are used in programming, he has understood the quintessence of programming." -Professor Edsger W. Dijkstra Based on slides
More informationChapter Goals. Contents LOOPS
CHAPTER 4 LOOPS Slides by Donald W. Smith TechNeTrain.com Final Draft Oct 30, 2011 Chapter Goals To implement while, for, and do loops To hand-trace the execution of a program To become familiar with common
More information