Unit 2 Expressions and variables; for loops Special thanks to Roy McElmurry, John Kurkowski, Scott Shawcroft, Ryan Tucker, Paul Beck for their work. Except.

Slides:



Advertisements
Similar presentations
Expressions, variables, and for loops (oh my!) spam, spam, spam, spam
Advertisements

Week 5 while loops; logic; random numbers; tuples Special thanks to Scott Shawcroft, Ryan Tucker, and Paul Beck for their work on these slides. Except.
Copyright 2008 by Pearson Education 1 Building Java Programs Chapter 2 Lecture 2-2: The for Loop reading: 2.3 self-check: exercises: 2-14 videos:
Week 2 ______ \ ^__^ \ (oo)\_______ (__)\ )\/\ ||----w | || ||
Week 1 basic Python programs, defining functions Special thanks to Scott Shawcroft, Ryan Tucker, and Paul Beck for their work on these slides. Except where.
Week 2 expressions, variables, for loops Special thanks to Scott Shawcroft, Ryan Tucker, Paul Beck, Hélène Martin, Kim Todd, John Kurkowski, and Marty.
Week 7 Lists Special thanks to Scott Shawcroft, Ryan Tucker, and Paul Beck for their work on these slides. Except where otherwise noted, this work is licensed.
CS305j Introduction to ComputingNested For Loops 1 Topic 6 Nested for Loops "Complexity has and will maintain a strong fascination for many people. It.
Copyright 2008 by Pearson Education 1 Building Java Programs Chapter 2 Lecture 2-1: Expressions and Variables reading:
Building Java Programs
Unit 5 while loops; logic; random numbers; tuples Special thanks to Roy McElmurry, John Kurkowski, Scott Shawcroft, Ryan Tucker, Paul Beck for their work.
Copyright 2009 by Pearson Education Building Java Programs Chapter 2 Lecture 2-2: The for Loop reading: 2.3 self-check: exercises: 2-14 videos: Ch.
Ruby! Useful as a scripting language – script: A small program meant for one time use – Targeted towards small to medium size projects Use by: – Amazon,
Copyright 2008 by Pearson Education 1 Building Java Programs Chapter 2 Lecture 2-3: Loop Figures and Constants reading: self-checks: 27 exercises:
Copyright 2008 by Pearson Education 1 Building Java Programs Chapter 2 Lecture 2-1: Expressions and Variables reading:
Unit 3 parameters and graphics Special thanks to Roy McElmurry, John Kurkowski, Scott Shawcroft, Ryan Tucker, Paul Beck for their work. Except where otherwise.
Week 1 basic Python programs, defining functions Special thanks to Scott Shawcroft, Ryan Tucker, and Paul Beck for their work on these slides. Except where.
1 Building Java Programs Chapter 3: Introduction to Parameters and Objects These lecture notes are copyright (C) Marty Stepp and Stuart Reges, They.
Unit 1 Basic Python programs, functions Special thanks to Roy McElmurry, John Kurkowski, Scott Shawcroft, Ryan Tucker, Paul Beck for their work. Except.
Week 2 expressions, variables, for loops Special thanks to Scott Shawcroft, Ryan Tucker, and Paul Beck for their work on these slides. Except where otherwise.
Week 2 expressions, variables, for loops Special thanks to Scott Shawcroft, Ryan Tucker, Paul Beck, Hélène Martin, Kim Todd, John Kurkowski, and Marty.
Exploration Seminar 4 Basics Special thanks to Scott Shawcroft, Ryan Tucker, Paul Beck and Roy McElmurry for their work on these slides. Except where otherwise.
Copyright 2010 by Pearson Education 1 Building Java Programs Chapter 2 Lecture 4: Loop Figures and Constants reading:
Copyright 2010 by Pearson Education 1 Building Java Programs Chapter 2 Lecture 2-2: The for Loop reading: 2.3 self-check: exercises: 2-14 videos:
Copyright 2010 by Pearson Education 1 Building Java Programs Chapter 2 Lecture 2-1: Expressions and Variables reading:
Copyright 2008 by Pearson Education 1 Building Java Programs Chapter 2 Lecture 2-2: The for Loop reading: 2.3 self-check: exercises: 2-14 videos:
Review for Final Exam. Contents 5 questions (20 points each) + 1 bonus question (20 points) – Basic concepts in Chapters 1-4 – Chapters 5-9 – Bonus: Chapter.
10/9/07 ______ \ ^__^ \ (oo)\_______ (__)\ )\/\ ||----w | || ||
If/else, return, user input, strings
Copyright 2008 by Pearson Education 1 Nested loops reading: 2.3 self-check: exercises: videos: Ch. 2 #4.
1 BUILDING JAVA PROGRAMS CHAPTER 2 PRIMITIVE DATA AND DEFINITE LOOPS.
Copyright 2006 by Pearson Education 1 Building Java Programs Chapter 2: Primitive Data and Definite Loops.
Mr. Crone.  Use print() to print to the terminal window  print() is equivalent to println() in Java Example) print(“Hello1”) print(“Hello2”) # Prints:
Input, Output and Variables GCSE Computer Science – Python.
Lecture 8: Python Writing Scripts in GIS
10/9/07 ______ < Moo? > \ ^__^ \ (oo)\_______ (__)\ )\/\
Building Java Programs
basic Python programs, defining functions
CSc 110, Autumn 2017 Lecture 5: The for Loop and user input
Ruth Anderson UW CSE 160 Spring 2018
Week 1 Review Special thanks to Scott Shawcroft, Ryan Tucker, and Paul Beck for their work on these slides. Except where otherwise noted, this work is.
while loops; file I/O; introduction to lists
basic Python programs, defining functions
Review for Final Exam.
Week 7 Lists Special thanks to Roy McElmurry, John Kurkowski, Scott Shawcroft, Ryan Tucker, Paul Beck for their work. Except where otherwise noted, this.
expressions, variables, for loops
CSc 110, Spring 2017 Lecture 4: Nested Loops and Loop Figures
expressions, variables, for loops
while loops; logic; random numbers; tuples
Building Java Programs
Building Java Programs
Building Java Programs
Variables variable: A piece of the computer's memory that is given a name and type, and can store a value. Like preset stations on a car stereo, or cell.
Building Java Programs
Building Java Programs
Review for Final Exam.
Building Java Programs
Chapter 2 Programming Basics.
Functions continued.
Python Basics with Jupyter Notebook
Building Java Programs
Building Java Programs
Suggested self-checks:
Building Java Programs
Drawing complex figures
Building Java Programs
Building Java Programs
Building Java Programs
Control flow: Loops UW CSE 160.
Introduction to Python
Presentation transcript:

Unit 2 Expressions and variables; for loops Special thanks to Roy McElmurry, John Kurkowski, Scott Shawcroft, Ryan Tucker, Paul Beck for their work. Except where otherwise noted, this work is licensed under:

2 Expressions Arithmetic is very similar to Java  Operators: + - * / % (and ** for exponentiation)  Precedence: () then ** then * / % then + -  Integers vs. real numbers >>> >>> * >>> 7 / 2 3 >>> 7.0 / >>> 10 **

3 Variables Declaring  no type is written; same syntax as assignment Operators  no ++ or -- operators (must manually adjust by 1) JavaPython int x = 2; x++; System.out.println(x); x = x * 8; System.out.println(x); double d = 3.2; d = d / 2; System.out.println(d); x = 2 x = x + 1 print(x) x = x * 8 print(x) d = 3.2 d = d / 2 print(d)

4 Types Python is looser about types than Java  Variables' types do not need to be declared  Variables can change types as a program is running ValueJava typePython type 42int 3.14doublefloat "ni!"Stringstr

5 String Multiplication Python strings can be multiplied by an integer.  The result is many copies of the string concatenated together. >>> "hello" * 3 "hellohellohello" >>> print(10 * "yo ") yo yo yo yo yo >>> print(2 * 3 * "4")

6 String Concatenation Integers and strings cannot be concatenated in Python.  Workarounds: str( value ) - converts a value into a string print( expr, expr ) - prints two items on the same line >>> x = 4 >>> print("Thou shalt not count to " + x + ".") TypeError: cannot concatenate 'str' and 'int' objects >>> print("Thou shalt not count to " + str(x) + ".") Thou shalt not count to 4. >>> print(x + 1, "is out of the question.") 5 is out of the question.

7 The for Loop for name in range( max ): statements  Repeats for values 0 (inclusive) to max (exclusive) >>> for i in range(5):... print(i)

8 for Loop Variations for name in range( min, max ): statements for name in range( min, max, step ): statements  Can specify a minimum other than 0, and a step other than 1 >>> for i in range(2, 6):... print(i) >>> for i in range(15, 0, -5):... print(i)

9 Nested Loops Nested loops are often replaced by string * and Java for (int line = 1; line <= 5; line++) { for (int j = 1; j <= (5 - line); j++) { System.out.print("."); } System.out.println(line); } Python 1212 for line in range(1, 6): print((5 - line) * "." + str(line))

10 Exercise Rewrite the Mirror lecture program in Python. Its output: #================# | <><> | | <>....<> | | <> <> | |<> <>| | <> <> | | <>....<> | | <><> | #================#

11 Exercise Solution def bar(): print "#" + 16 * "=" + "#" def top(): for line in range(1, 5): # split a long line by ending it with \ print "|" + (-2 * line + 8) * " " + \ "<>" + (4 * line - 4) * "." + "<>" + \ (-2 * line + 8) * " " + "|" def bottom(): for line in range(4, 0, -1): print "|" + (-2 * line + 8) * " " + \ "<>" + (4 * line - 4) * "." + "<>" + \ (-2 * line + 8) * " " + "|" # main bar() top() bottom() bar()

12 Concatenating Ranges Ranges can be concatenated with +  Can be used to loop over a disjoint range of numbers >>> range(1, 5) + range(10, 15) [1, 2, 3, 4, 10, 11, 12, 13, 14] >>> for i in range(4) + range(10, 7, -1):... print(i)

13 Exercise Solution 2 def bar(): print "#" + 16 * "=" + "#" def mirror(): for line in range(1, 5) + range(4, 0, -1): print "|" + (-2 * line + 8) * " " + \ "<>" + (4 * line - 4) * "." + "<>" + \ (-2 * line + 8) * " " + "|" # main bar() mirror() bar()

14 Constants Python doesn't really have constants.  Instead, declare a "global" variable at the top of your code.  All methods will be able to use this value. constant.py MAX_VALUE = 3 def printTop(): for i in range(MAX_VALUE): for j in range(i): print(j) print() def printBottom(): for i in range(MAX_VALUE, 0, -1): for j in range(i, 0, -1): print(MAX_VALUE) print()

15 Exercise Solution 3 SIZE = 4 def bar(): print "#" + 4 * SIZE * "=" + "#" def mirror(): for line in range(1, SIZE + 1) + range(SIZE, 0, -1): print "|" + (-2 * line + 2 * SIZE) * " " + \ "<>" + (4 * line - 4) * "." + "<>" + \ (-2 * line + 2 * SIZE) * " " + "|" # main bar() mirror() bar()