CS 302 - Week 3 Jim Williams, PhD.

Slides:



Advertisements
Similar presentations
Making Choices in C if/else statement logical operators break and continue statements switch statement the conditional operator.
Advertisements

Repetition Statements Recitation – 02/20/2009 CS 180 Department of Computer Science, Purdue University.
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Adrian Ilie COMP 14 Introduction to Programming Adrian Ilie July 5, 2005.
Loops – While Loop Repetition Statements While Reading for this Lecture, L&L, 5.5.
5-1 Flow of Control Recitation-01/25/2008  CS 180  Department of Computer Science  Purdue University.
Loops – While, Do, For Repetition Statements Introduction to Arrays
Copyright © 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Java Software Solutions Foundations of Program Design Sixth Edition by Lewis.
COMP 14 Introduction to Programming Miguel A. Otaduy May 20, 2004.
Loops Repetition Statements. Repetition statements allow us to execute a statement multiple times Often they are referred to as loops Like conditional.
© 2004 Pearson Addison-Wesley. All rights reserved5-1 Iterations/ Loops The while Statement Other Repetition Statements.
ECE122 L9: While loops March 1, 2007 ECE 122 Engineering Problem Solving with Java Lecture 9 While Loops.
© 2007 Lawrenceville Press Slide 1 Chapter 6 The while Statement  Loop structure that executes a set of statements as long as a condition is true  The.
Review Review Review. Concepts Comments: definition, example, different types of comments Class: definition, example Object: definition, example Data.
CS107 Introduction to Computer Science Java Basics.
Chapter 5 Loops.
Java Programming: From Problem Analysis to Program Design, 4e Chapter 2 Basic Elements of Java.
Session Three Review & Conditional Control Flow. Java File Hierarchy Projects Packages Classes Methods.
Lec 4: while loop and do-while loop. Review from last week if Statements if (num < 0.5){...println("heads"); } if –else Statements if (num < 0.5){...println("heads");
Repetition Statements while and do while loops
CS 0401 Debugging Hints and Programming Quirks for Java by John C. Ramirez University of Pittsburgh.
 CSC111 Quick Revision. Problem Write a java code that read a string, then show a list of options to the user to select from them, where:  L to print.
Instructor: Alexander Stoytchev CprE 185: Intro to Problem Solving (using C)
Chapter 4: Control Structures I J ava P rogramming: From Problem Analysis to Program Design, From Problem Analysis to Program Design, Second Edition Second.
Session Three Review & Conditional Control Flow. Java File Hierarchy Projects Packages Classes Methods.
Repetition Statements
Basic concepts of C++ Presented by Prof. Satyajit De
Lecture 2 D&D Chapter 2 & Intro to Eclipse IDE Date.
CSC111 Quick Revision.
Chapter 4 Repetition Statements (loops)
Yanal Alahmad Java Workshop Yanal Alahmad
Yanal Alahmad Java Workshop Yanal Alahmad
Loop Structures.
User input We’ve seen how to use the standard output buffer
Java Programming: From Problem Analysis to Program Design, 4e
Comp Sci 200 Programming I Jim Williams, PhD.
CS Programming I Jim Williams, PhD.
CS Week 2 Jim Williams, PhD.
CS 302 Week 15 Jim Williams, PhD.
CS 200 Branches Jim Williams, PhD.
CS Week 4 Jim Williams, PhD.
Comp Sci 302 Introduction to Programming
CS 200 Using Objects Jim Williams, PhD.
CS Week 6 Jim Williams, PhD.
CET 3640 – Lecture 2 Java Syntax Chapters 2, 4, 5
CS Week 7 Jim Williams, PhD.
Outline Altering flow of control Boolean expressions
Week 6 CS 302 Jim Williams, PhD.
CS 200 More Primitives, Objects, Branches and Methods
CS Week 3 Jim Williams.
Lec 4: while loop and do-while loop
CS 200 Loops Jim Williams, PhD.
CS 200 Arrays Jim Williams, PhD.
CS Week 4 Jim Williams, PhD.
CS 200 Primitives and Expressions
CS 200 Additional Topics and Review
CS 200 Methods, Using Objects
Lecture 13 Introduction to High-Level Programming (S&G, §§7.1–7.6)
Repetition Statements
CS Week 2 Jim Williams, PhD.
CS Programming I Jim Williams, PhD.
Chap 7. Advanced Control Statements in Java
CS Week 3 Jim Williams, PhD.
Ben Stanley for gAlpha gALPHA free, four-week venture-creation workshop designed to help entrepreneurially-minded students and technologists create high-growth.
Control Structure.
CS Programming I Jim Williams, PhD.
CprE 185: Intro to Problem Solving (using C)
CS302 Week 6 Jim Williams.
Presentation transcript:

CS 302 - Week 3 Jim Williams, PhD

Learning and Effort Influence Intelligence "...effort and difficulty, that's when their neurons are making new connections, stronger connections. That's when they're getting smarter." - Carol Dweck https://www.ted.com/talks/carol_dweck_the_power_of_believing_that_you_can_improve

What are you doing (mentally)? Images: http://www.ussportscamps.com/tips/basketball/5-key-qualities-college-coaches-look-for-in-basketball-players http://www.hoopskills.com/creating-buy-in

Exam Confirmation and Accommodation requests due by Friday Week 3 Exam Confirmation and Accommodation requests due by Friday P1 Milestone 1 due Thursday 8:00am https://cs302-www.cs.wisc.edu/wp/contact-4/#CSLearningCenter

Are these equivalent? boolean tired = true; if ( tired) { Same result in all cases Different result sometimes Error boolean tired = true; if ( tired) { //take break tired = false; } if ( !tired) { //keep working boolean tired = true; if ( tired) { //take break tired = false; } else { //keep working }

Floating Down a River http://www.thehiltonorlando.com/discover/pools-and-lazy-river/

Side Trip, maybe multiple side trips boolean tired = true; if ( tired) { System.out.println(“take break”); }

One side of the Island or the other boolean sunny = false; if ( sunny) { System.out.print(“sunny”); } else { System.out.print(“not sunny”); } System.out.println( “ and back together”);

Equivalent? Yes No char chr = //any valid char out = 'W'; if ( chr == 'A') { out = 'X'; } else if ( chr == 'B') { out = 'Y'; } else { out = 'Z'; } char chr = //any valid char out = 'W'; if ( chr == 'A') { out = 'X'; } if ( chr == 'B') { out = 'Y'; } if ( chr != 'A' || chr != 'B') { out = 'Z'; } Yes No

Dangling Else - What is out? int value = 0; String out = "abc"; if ( value >= 1 ) if ( value <= 10) out = "1 to 10"; else out = "else"; out: abc out: 1 to 10 out: else out: abcelse

Values of a1 and a2? String str1 = "Hello"; a1: true a2: true a1: false a2: false String str1 = "Hello"; String str2 = new String( "Hello"); boolean a1 = str1 == str2; boolean a2 = str1.equals(str2);

Values of a1 and a2? char ch1 = 'H'; String str = "Hello"; a1: true a2: true a1: false a2: false char ch1 = 'H'; String str = "Hello"; char ch2 = str.charAt(0); boolean a1 = ch1 == ch2; boolean a2 = ch1.equals(ch2);

java.util.Random Random randGen; //Declare reference variable randGen = new Random(); //create instance // randGen.setSeed( 123); //set state int valueA = randGen.nextInt( 5); //get a value int valueB = randGen.nextInt( 5); int valueC = randGen.nextInt( 5);

Eclipse IDE (Integrated Development Environment) Interpreter Translator Users Editor (Virtual) Machine Compiler Hello.java Hello.class Computer Files Programmer

Programming Errors Syntax/Compile time Runtime & Logic Files Editor (Virtual) Machine Compiler Hello.java Hello.class Computer Files Programmer

Programming Errors Syntax compiler error Logic program runs but provides wrong values Runtime program crashes or throws exception

Debugging print statements Java Visualizer Breakpoints in Eclipse https://en.wikipedia.org/wiki/Debugging

What is print out? a char choice = 'a'; switch (choice) { case 'a': System.out.print("a"); case 'b': System.out.print("b"); break; default: System.out.print("other"); } a b ab other

char - Which will compile? 1, 2, 3 1, 3 1 2, 3 int intValue = 0; char aChar = 'B'; intValue = aChar; // 1 aChar = intValue + 1; // 2 aChar = '\u0041'; // 3

Increment && Decrement i = i + 1; i += 1; i++; ++i; i = i -1; i -= 2; --i; i--;

Week 3 Exam Confirmation and Accommodation Requests Due Tomorrow

Puzzle int i = 5, j = 2, k; j += 3; k = i++ + --j; After this executes, what are the values in i, j and k?

Puzzle int i = 5, j = 2, k; j = i + 3; k = i++ + --j - 1; After this executes, what are the values in i, j and k?

Floating Down A Circular River?! http://www.thehiltonorlando.com/discover/pools-and-lazy-river/

How many times will this execute? 1 until num > 0 until num <= 0 Scanner input = new Scanner( System.in); int num; int sum = 0; do { num = input.nextInt(); sum += num; } while ( num > 0);

Body of While will execute... boolean finished = false; while ( !finished) { String line = input.nextLine(); if ( line.equals("done")) { finished = true; } else { System.out.println("echo:" + line); } until "done" is input never forever other?

How many "hello"? for ( int a = 0; a <= 5; a++) { System.out.print("hello "); } 4 5 6 other?

How many "hello"? for ( int a = 5; a >= 1; a++) { System.out.print("hello "); } 4 5 6 other?

How many "bye"? for ( int i = 1; i <= 5; i++) { for ( int j = 2; j < 6; j++) { System.out.print("bye "); } 5 9 20 other?

What does this print? for ( int i = 1; i <= 5; i++) { 1,1 1,2 1,3 2,1 2,2 2,3 3,1 3,2 3,3 4,1 4,2 4,3 5,1 5,2 5,3 1,1 2,1 3,1 1,2 2,2 3,2 1,3 2,3 3,3 1,4 2,4 3,4 1,5 2,5 3,5 for ( int i = 1; i <= 5; i++) { for ( int j = 1; j <= 3; j++) { System.out.print(i+","+j+" "); } System.out.println();

What is the value of count? 3 9 12 other int count = 0; for ( int i = 1; i < 4; i++) { for ( int j = 6; j > 3; j--) { count += 1; } System.out.println("count=" + count);

What is the value of sum? 3 9 12 other int sum= 0; boolean done = false; for ( int i = 1; i < 4 && !done; i++) { for ( int j = 6; j > 3; j--) { if ( j > 4) continue; sum += 1; } if ( i == 3) break; System.out.println("sum=" + sum); 3 9 12 other

Scanner num: 0 str4: line str4: line note. num: 3 str4: String note = "Hmm\na 3\nline note."; Scanner input = new Scanner( note); int num = 0; String str1 = input.nextLine(); String str2 = input.next(); if ( input.hasNextInt()) { num = input.nextInt(); } String str4 = input.nextLine();

What is the value of msg? boolean flag = true; String msg = "before if"; if ( flag = false); { msg = "" + flag; } before if true false