Consolidation and Review
|
|
- Clinton Chase
- 5 years ago
- Views:
Transcription
1 Consolidation and Review Professor Hugh C. Lauer CS-1004 Introduction to Programming for Non-Majors (Slides include materials from Python Programming: An Introduction to Computer Science, 2 nd edition, by John Zelle and copyright notes by Prof. George Heineman of ) 1
2 At start of term Mixture of skills Smattering of programming experience Mostly Java Some familiarity with formulas in Excel Need to do computing in own fields 2
3 First Problem Find area of a disk: Easy to do manually (for one disk) More difficult for many disks 3
4 Straightforward in Excel This is, in fact, a form of programming! Change value of cell Excel reacts by changing values of all cells depending on that one! Very useful for many types of problems CS-1004, A-Term 2014 First Python Program 4
5 Python Qualitatively different Actions carried out step-by-step Each step does something specific Evaluate expression Test condition Repeat sequences of steps Call function encapsulation of steps Excel: Modify one cell Excel modifies all dependent cells and all cells dependent on them and all cells dependent on them etc., etc., etc. (Internally), Excel keeps lists of dependencies of each cell and then does this whenever a cell changes! 5
6 This course has been about programming in an algorithmic language What is an algorithm? P. 4: step-by-step process for achieving a desired result I.e., a recipe! Approximately 1/3 of this course has been about selecting/designing algorithms i.e., working out the steps Expressing them in Python 6
7 Inherent part of algorithm Places to store data to be available for algorithm at just the right time! Variable: Python: a symbolic name used to refer to a value or computational object (list, dictionary, object, ) Other languages (Java, C, C++, etc.): symbolic name for a place where values are stored! Variables in Python created two ways: 1. Assignment statement associates a name with a value or object Or changes a previous association 2. Arguments in functions calls assigned to parameters of called function! In Python, any kind of value or object can be assigned to any variable Regardless of type of previous assignment Not so in other languages: type must be preserved 7
8 Questions? 8
9 Another key element of programming Function: A computational action agent Takes zero or more parameters Returns zero or more results An encapsulation of a sub-program To solve a subset of problem repeatedly with different arguments (assigned to parameters) May do anything it wants internally so long as it only affects external variables in specified ways Very, very useful for breaking programming problem into smaller pieces Solve one part of problem then forget about it and move on to another part! 9
10 Functions (continued) (Almost) everything we do in Python is part of a function Function design is central part of algorithm design 10
11 Two kinds of numbers in Python Integers For counting things Floating point numbers a.k.a. floats For approximating fractions, decimals, scientific notation Very large Astronomical sizes! Very small Subatomic sizes! Everything in between 11
12 Scope rules and Importing Variables in functions stay in functions! Not visible outside Enables mental isolation I.e., can concentrate on function or subprogram without worrying about reuse of identifiers Esp. inadvertent reuse! Same as in most other programming languages 12
13 Import import pkg Add pkg to current scope All methods and public instance variables accessible with dot notation from pkg name from P import Q Adds Q to current scope (but not P) Q s methods and instance variables accessible via dot notation from P import * Adds everything from P s scope to current scope! Bad idea! People do it anyway! 13
14 Questions or comments? 14
15 Data structures Second part of course has been about designing data representations suitable for solving our problems Bigger deal than algorithm design Data drives the algorithm NOT algorithm drives the data! Note that CS-1101/02 and CS-2102 (for CS majors and related fields) is primarily about design of data Algorithms and programming languages are (almost) corollaries! 15
16 Data structures in CS-1004 Lists Strings Dictionaries Objects 16
17 Lists Linear (ordered) set of things Values Objects Other lists Etc. Accessible by position Easy to append something Easy to find something by position Easy (in Python) to find out if something is in the list Easy to iterate thru But need to know where something will be in list 17
18 Lists (continued) Equivalent to arrays in languages like C, C++, and Java Basis for matrices, many mathematical models Used lists in Homework #2 to plot sin() function Homework #4 to store words from input files Homework #5 to plot probabilities of winning and losing at craps Homework #6??? 18
19 Lists and arrays (continued) Widely used in many programming languages More flexible in Python than in other languages Heterogeneous i.e., different types for different element Built-in methods or operators for sorting, slicing, insertion, deletion, searching, etc. Not as efficient as in C and C++ Much safer than in C and C++ Much, much more efficient in other languages Uses fastest machine instructions for accessing Minimal data overhead All elements must be same type! Same syntax for accessing L[index], M[index1][index3] Acts just like a variable in those languages No checking for illegal indexes in C, C++! 19
20 Strings Immutable Any character set, any human language As of Python 3 Java also uses Unicode C & C++ more primitive Methods similar to lists, other sequences Adding, replicating, searching Indexing, slicing, substrings Many methods return new string I.e., no updating in place! Characters are strings of length 1 Unlike C, C++, and Java 20
21 Questions? Comments? 21
22 Dictionaries Based on Hash Table technology Dates back to early days of computing Built into Python as fundamental data type Unlike all other languages! Easy to use, easy to access Homework #4 Much simpler, faster CSV files Saves having to memorize list positions for specific data Simpler program, easier to understand Adaptable to other data sets with different column orders 22
23 Objects Built into Python, Java, C++ No such thing in C More programmer friendly in Python! Encapsulate information and action Know stuff Do stuff Essential for advanced applications See Chapter 12 in textbook Makes advanced stuff accessible to ordinary people and beginning programmers Homework #3 Homework #6 23
24 Objects (continued) Simple graphics package All in Python Easy to use 24
25 Object notation Thing.method() Widely used in many programming languages Simplifies many applications Central to programming by elementary-school age children Subject of much research 25
26 Questions or comments? 26
27 Third major component of course Doing things! Writing programs Debugging programs Akin to learning to speak a foreign language 27
28 Third major component (continued) Frustrations of Silly mistakes Undetected typos Poor self-organization Tired thinking Misunderstood conceptual material Overlooked details in documentation. or instructions! Incompatibilities between computer types 28
29 Frustrations (continued) Actually getting programs to work! Even if presented with methodical, small steps All of those things that were obvious at the time But aren t so obvious now! Perhaps not even true Practice! Lots and lots of practice! 29
30 Homework #1 & 2 Homework #1 Getting started Simple Expressions (Not unlike Excel!) Simple functions Homework #2 Definite loops Computing a Taylor series Plotting on pyplot/matplotlib Not something you would get to do in other programming languages! This early in course! 30
31 Homework #3 Graphics exercises Way outside of comfort zone! Non-traditional approach of textbook Something you can do and be excited about Especially after only three weeks! 31
32 Homework #4 Word problems String manipulation Traditional problem in non-traditional setting Trying to get heads around splitting, stripping, etc. Simple concepts A lot of work behind the scenes so that you don t have to do it! 32
33 Homework #5 Monte Carlo simulation Small taste of real-life type of problem Likely to encounter in your own fields Random number generation Rolling the dice! Plotting More plotting! 33
34 Homework #6 CSV files Common data format Dictionaries If you choose to use them! Creating visual representation of the outcome of computation Exploit human eye capability of understanding data! Graphics and images A cool problem for finishing up a first course in computer programming 34
35 Comments? Thoughts? Reactions? 35
36 Interested in more CS courses? CS-2004 object oriented design for nonmajors Currently in Java Also known as CS-220X CS-2301 System programming for non-majors Programming in C Prerequisite for ECE 2040, 3849 CS minor See next chart 36
37 CS 1102 CS 1101 CS 1004 OR CS 3043 Social Impl. of Info. Processing CS 2102 Object Oriented Design OR CS 220X Non-Major Building SW Apps with OO CS 2022/ MA 2201 Discrete Mathematics CS 2223 Algorithms CS 2303 Sys. Prog. Concepts CS 2301 Sys. Prog. For Non-majors OR CS 3133 Foundations of Comp. Science CS 3431 Database Systems I CS 3041 Human Comp. Interaction CS 3733 Software Engineering CS 2011 Mach. Org. & Assem. Lang. Artificial Intelligence Other courses for CS Majors Courses for CS Minor CS 4233 CS 3013 Operating Systems CS 4515 CS 4513 CS 4516 CS 3516 Computer Networks CS-1004, A-Term 2014 Introduction 37
38 Thank you! 38
Professor Hugh C. Lauer CS-1004 Introduction to Programming for Non-Majors
First Python Program Professor Hugh C. Lauer CS-1004 Introduction to Programming for Non-Majors (Slides include materials from Python Programming: An Introduction to Computer Science, 2 nd edition, by
More informationProfessor Hugh C. Lauer CS-1004 Introduction to Programming for Non-Majors
Objects (again) Professor Hugh C. Lauer CS-1004 Introduction to Programming for Non-Majors (Slides include materials from Python Programming: An Introduction to Computer Science, 2 nd edition, by John
More informationImplementing an Algorithm for Boomerang Fraction Sequences in Python
Introduction Implementing an Algorithm for Boomerang Fraction Sequences in Python We ve all encountered maze problems, where the challenge is to find a path through a labyrinth from a starting point to
More informationAn introduction to plotting data
An introduction to plotting data Eric D. Black California Institute of Technology February 25, 2014 1 Introduction Plotting data is one of the essential skills every scientist must have. We use it on a
More informationBasic Programming Language Syntax
Java Created in 1990 by Sun Microsystems. Free compiler from Sun, commercial from many vendors. We use free (Sun) Java on UNIX. Compiling and Interpreting...are processes of translating a high-level programming
More informationCS 231 Data Structures and Algorithms, Fall 2016
CS 231 Data Structures and Algorithms, Fall 2016 Dr. Bruce A. Maxwell Department of Computer Science Colby College Course Description Focuses on the common structures used to store data and the standard
More informationENGR 102 Engineering Lab I - Computation
ENGR 102 Engineering Lab I - Computation Learning Objectives by Week 1 ENGR 102 Engineering Lab I Computation 2 Credits 2. Introduction to the design and development of computer applications for engineers;
More informationVariables and Data Representation
You will recall that a computer program is a set of instructions that tell a computer how to transform a given set of input into a specific output. Any program, procedural, event driven or object oriented
More informationTopic 7: Lists, Dictionaries and Strings
Topic 7: Lists, Dictionaries and Strings The human animal differs from the lesser primates in his passion for lists of Ten Best H. Allen Smith 1 Textbook Strongly Recommended Exercises The Python Workbook:
More informationMobile Computing Professor Pushpendra Singh Indraprastha Institute of Information Technology Delhi Java Basics Lecture 02
Mobile Computing Professor Pushpendra Singh Indraprastha Institute of Information Technology Delhi Java Basics Lecture 02 Hello, in this lecture we will learn about some fundamentals concepts of java.
More informationPython review. 1 Python basics. References. CS 234 Naomi Nishimura
Python review CS 234 Naomi Nishimura The sections below indicate Python material, the degree to which it will be used in the course, and various resources you can use to review the material. You are not
More informationPython for Analytics. Python Fundamentals RSI Chapters 1 and 2
Python for Analytics Python Fundamentals RSI Chapters 1 and 2 Learning Objectives Theory: You should be able to explain... General programming terms like source code, interpreter, compiler, object code,
More informationENGR 102 Engineering Lab I - Computation
ENGR 102 Engineering Lab I - Computation Week 07: Arrays and Lists of Data Introduction to Arrays In last week s lecture, 1 we were introduced to the mathematical concept of an array through the equation
More informationProgramming II (CS300)
1 Programming II (CS300) Chapter 01: Procedural Programming MOUNA KACEM mouna@cs.wisc.edu Fall 2018 Procedural Programming 2 Introduction Procedural Programming: General Overview Procedural Programming:
More informationUser-Centered Design Data Entry
User-Centered Design Data Entry CS 4640 Programming Languages for Web Applications [The Design of Everyday Things, Don Norman, Ch 7] 1 Seven Principles for Making Hard Things Easy 1. Use knowledge in the
More informationCS/ENGRD 2110 FALL 2018
CS2110 2 THERE IS ROOM IN THE BALCONY! Romeo, Romeo, where art thou! Up in the balcony, where it s cheaper! CS/ENGRD 2110 FALL 2018 Object-oriented programming, reasoning about complex problems Testing;
More informationPart III Appendices 165
Part III Appendices 165 Appendix A Technical Instructions Learning Outcomes This material will help you learn how to use the software you need to do your work in this course. You won t be tested on it.
More information2 A little on Spreadsheets
2 A little on Spreadsheets Spreadsheets are computer versions of an accounts ledger. They are used frequently in business, but have wider uses. In particular they are often used to manipulate experimental
More informationIntro. Scheme Basics. scm> 5 5. scm>
Intro Let s take some time to talk about LISP. It stands for LISt Processing a way of coding using only lists! It sounds pretty radical, and it is. There are lots of cool things to know about LISP; if
More informationObject-Oriented Programming in Processing
Object-Oriented Programming in Processing Object-Oriented Programming We ve (kinda) been doing this since Day 1: Python is a deeply object oriented language Most of the data types we were using (strings,
More informationOpen GL Framework For A Computer Graphics Course
Open GL Framework For A Computer Graphics Course Programmer: Daniel Odle Sponsor / Advisor: Dr. Morse University of Evansville 4-26-03 Table of Contents Introduction 3 Statement of Problem 3 Design Approach
More informationWelcome to CS 115 (Winter 2019)
Welcome to CS 115 (Winter 2019) Web page (the main information source): http://www.student.cs.uwaterloo.ca/ cs115/ Course Personnel: Contact information and office hours for all staff: instructors, ISAs
More informationCPS122 Lecture: From Python to Java last revised January 4, Objectives:
Objectives: CPS122 Lecture: From Python to Java last revised January 4, 2017 1. To introduce the notion of a compiled language 2. To introduce the notions of data type and a statically typed language 3.
More informationIntroduction to Python Part 2
Introduction to Python Part 2 v0.2 Brian Gregor Research Computing Services Information Services & Technology Tutorial Outline Part 2 Functions Tuples and dictionaries Modules numpy and matplotlib modules
More informationIteration. # a and b are now equal # a and b are no longer equal Multiple assignment
Iteration 6.1. Multiple assignment As you may have discovered, it is legal to make more than one assignment to the same variable. A new assignment makes an existing variable refer to a new value (and stop
More informationAlgorithms in Systems Engineering IE172. Midterm Review. Dr. Ted Ralphs
Algorithms in Systems Engineering IE172 Midterm Review Dr. Ted Ralphs IE172 Midterm Review 1 Textbook Sections Covered on Midterm Chapters 1-5 IE172 Review: Algorithms and Programming 2 Introduction to
More informationLoop structures and booleans
Loop structures and booleans Michael Mandel Lecture 7 Methods in Computational Linguistics I The City University of New York, Graduate Center https://github.com/ling78100/lectureexamples/blob/master/lecture07final.ipynb
More informationProcessor. Lecture #2 Number Rep & Intro to C classic components of all computers Control Datapath Memory Input Output
CS61C L2 Number Representation & Introduction to C (1) insteecsberkeleyedu/~cs61c CS61C : Machine Structures Lecture #2 Number Rep & Intro to C Scott Beamer Instructor 2007-06-26 Review Continued rapid
More informationFile Operations. Working with files in Python. Files are persistent data storage. File Extensions. CS111 Computer Programming
File Operations Files are persistent data storage titanicdata.txt in PS06 Persistent vs. volatile memory. The bit as the unit of information. Persistent = data that is not dependent on a program (exists
More information61A LECTURE 1 FUNCTIONS, VALUES. Steven Tang and Eric Tzeng June 24, 2013
61A LECTURE 1 FUNCTIONS, VALUES Steven Tang and Eric Tzeng June 24, 2013 Welcome to CS61A! The Course Staff - Lecturers Steven Tang Graduated L&S CS from Cal Back for a PhD in Education Eric Tzeng Graduated
More informationThe first thing we ll need is some numbers. I m going to use the set of times and drug concentration levels in a patient s bloodstream given below.
Graphing in Excel featuring Excel 2007 1 A spreadsheet can be a powerful tool for analyzing and graphing data, but it works completely differently from the graphing calculator that you re used to. If you
More informationCS2900 Introductory Programming with Python and C++ Kevin Squire LtCol Joel Young Fall 2007
CS2900 Introductory Programming with Python and C++ Kevin Squire LtCol Joel Young Fall 2007 Course Web Site http://www.nps.navy.mil/cs/facultypages/squire/cs2900 All course related materials will be posted
More informationHigher National Unit specification: general information
Higher National Unit specification: general information Unit code: H16Y 35 Superclass: CB Publication date: November 2012 Source: Scottish Qualifications Authority Version: 02 Unit purpose This Unit is
More informationIntro to Programming. Unit 7. What is Programming? What is Programming? Intro to Programming
Intro to Programming Unit 7 Intro to Programming 1 What is Programming? 1. Programming Languages 2. Markup vs. Programming 1. Introduction 2. Print Statement 3. Strings 4. Types and Values 5. Math Externals
More informationWelcome to CS 115 (Winter 2018)
Welcome to CS 115 (Winter 2018) Web page (the main information source): http://www.student.cs.uwaterloo.ca/ cs115/ Course Personnel: Contact information and office hours for all staff: instructors, ISAs
More informationNumerical Precision. Or, why my numbers aren t numbering right. 1 of 15
Numerical Precision Or, why my numbers aren t numbering right 1 of 15 What s the deal? Maybe you ve seen this #include int main() { float val = 3.6f; printf( %.20f \n, val); Print a float with
More informationFOR Loops. Last Modified: 01 June / 1
FOR Loops http://people.sc.fsu.edu/ jburkardt/isc/week04 lecture 08.pdf... ISC3313: Introduction to Scientific Computing with C++ Summer Semester 2011... John Burkardt Department of Scientific Computing
More informationGIS 4653/5653: Spatial Programming and GIS. More Python: Statements, Types, Functions, Modules, Classes
GIS 4653/5653: Spatial Programming and GIS More Python: Statements, Types, Functions, Modules, Classes Statement Syntax The if-elif-else statement Indentation and and colons are important Parentheses and
More informationCS1110 Lab 1 (Jan 27-28, 2015)
CS1110 Lab 1 (Jan 27-28, 2015) First Name: Last Name: NetID: Completing this lab assignment is very important and you must have a CS 1110 course consultant tell CMS that you did the work. (Correctness
More informationVARIABLES AND TYPES CITS1001
VARIABLES AND TYPES CITS1001 Scope of this lecture Types in Java the eight primitive types the unlimited number of object types Values and References The Golden Rule Primitive types Every piece of data
More informationChapter 2.6: Testing and running a solution
Chapter 2.6: Testing and running a solution 2.6 (a) Types of Programming Errors When programs are being written it is not surprising that mistakes are made, after all they are very complicated. There are
More informationWeek - 03 Lecture - 18 Recursion. For the last lecture of this week, we will look at recursive functions. (Refer Slide Time: 00:05)
Programming, Data Structures and Algorithms in Python Prof. Madhavan Mukund Department of Computer Science and Engineering Indian Institute of Technology, Madras Week - 03 Lecture - 18 Recursion For the
More informationRepresentation of Non Negative Integers
Representation of Non Negative Integers In each of one s complement and two s complement arithmetic, no special steps are required to represent a non negative integer. All conversions to the complement
More informationCOMP251: Algorithms and Data Structures. Jérôme Waldispühl School of Computer Science McGill University
COMP251: Algorithms and Data Structures Jérôme Waldispühl School of Computer Science McGill University About Me Jérôme Waldispühl Associate Professor of Computer Science I am conducting research in Bioinformatics
More informationChapter 1 Summary. Chapter 2 Summary. end of a string, in which case the string can span multiple lines.
Chapter 1 Summary Comments are indicated by a hash sign # (also known as the pound or number sign). Text to the right of the hash sign is ignored. (But, hash loses its special meaning if it is part of
More informationEarly programming languages ca. 1960
Session 5: Intro. to Java collections History Collection / container concept Shortcoming of original version Parameterized collections Example: ArrayList Comp 271, Spring, 2012 Mr. Weisert Early programming
More informationCS 1124 Media Computation. Steve Harrison Lecture 1.2 (August 27, 2008)
CS 1124 Media Computation Steve Harrison Lecture 1.2 (August 27, 2008) Today Computer science Look at Jython Look at some cool image things Pixels Why study CS? What is computer science about? What do
More informationCS 184: Assignment 4 Simple Raytracer
CS 184: Assignment 4 Simple Raytracer Ravi Ramamoorthi 1 Introduction This assignment asks you to write a first simple raytracer. Raytracers can produce some of the most impressive renderings, with high
More informationLook at the outermost list first, evaluate each of its arguments, and use the results as arguments to the outermost operator.
LISP NOTES #1 LISP Acronymed from List Processing, or from Lots of Irritating Silly Parentheses ;) It was developed by John MacCarthy and his group in late 1950s. Starting LISP screen shortcut or by command
More informationFile Operations. Working with files in Python. Files are persistent data storage. File Extensions. CS111 Computer Programming
File Operations Files are persistent data storage titanicdata.txt in PS07 Persistent vs. volatile memory. The bit as the unit of information. Persistent = data that is not dependent on a running program
More informationCSCI-1200 Data Structures Spring 2018 Lecture 14 Associative Containers (Maps), Part 1 (and Problem Solving Too)
CSCI-1200 Data Structures Spring 2018 Lecture 14 Associative Containers (Maps), Part 1 (and Problem Solving Too) HW6 NOTE: Do not use the STL map or STL pair for HW6. (It s okay to use them for the contest.)
More informationJava Programming Unit 3: Variables and Arithmetic Operations
Java Programming Unit 3: Variables and Arithmetic Operations Bensalem Township School District Standards Link: PA State Standards for Business Education: http://www.pdesas.org/standard/views#114,115,116,117
More informationALICE: An introduction to progamming
ALICE: An introduction to progamming What is Computer Science? Computer Science Do you know the difference between ICT and Computer Science? Any suggestions as to what jobs you could do if you were a Computer
More informationLearning to Provide Modern Solutions
1 Learning to Provide Modern Solutions Over the course of this book, you will learn to enhance your existing applications to modernize the output of the system. To do this, we ll take advantage of the
More informationLECTURE 0: Introduction and Background
1 LECTURE 0: Introduction and Background September 10, 2012 1 Computational science The role of computational science has become increasingly significant during the last few decades. It has become the
More informationApplied Calculus. Lab 1: An Introduction to R
1 Math 131/135/194, Fall 2004 Applied Calculus Profs. Kaplan & Flath Macalester College Lab 1: An Introduction to R Goal of this lab To begin to see how to use R. What is R? R is a computer package for
More informationCS 150 Introduction to Computer Science 1. August 31, 2009
CS 150 Introduction to Computer Science 1 Professor: Douglas J. Ryan August 31, 2009 CS150 Introduction to Computer Science 1 8/30/09 Douglas J. Ryan http://zeus.cs.pacificu.edu/ryand ryandj@pacificu.edu
More informationGCSE Computer Science Component 02
GCSE Computer Science Component 02 Revision Computational Thinking ABSTRACTION Making a problem simpler by removing unnecessary details. This is important when coding as it: Makes it easier to code! Means
More informationIntroduction. A Brief Description of Our Journey
Introduction If you still write RPG code as you did 20 years ago, or if you have ILE RPG on your resume but don t actually use or understand it, this book is for you. It will help you transition from the
More informationIntro to Maths for CS: Fractions: Numerical and Algebraic
Intro to Maths for CS: Fractions: Numerical and Algebraic Joshua Knowles School of Computer Science, University of Birmingham Term 1, 2015-16 (Slides by John Barnden) Textbook Parts Programme F.1, section
More informationFunctions and Decomposition
Unit 4 Functions and Decomposition Learning Outcomes Design and implement functions to carry out a particular task. Begin to evaluate when it is necessary to split some work into functions. Locate the
More informationDivisibility Rules and Their Explanations
Divisibility Rules and Their Explanations Increase Your Number Sense These divisibility rules apply to determining the divisibility of a positive integer (1, 2, 3, ) by another positive integer or 0 (although
More informationLecture 19. Topics: Chapter 9. Simulation and Design Moving to graphics library Unit Testing 9.5 Other Design Techniques
Lecture 19 Topics: Chapter 9. Simulation and Design Moving to graphics library 9.4.1 Unit Testing 9.5 Other Design Techniques 1 9.4.1 Unit Testing When we finish writing a function (a component of a program)
More informationCollections. Lists, Tuples, Sets, Dictionaries
Collections Lists, Tuples, Sets, Dictionaries Homework notes Homework 1 grades on canvas People mostly lost points for not reading the document carefully Didn t play again Didn t use Y/N for playing again
More informationThe Big Python Guide
The Big Python Guide Big Python Guide - Page 1 Contents Input, Output and Variables........ 3 Selection (if...then)......... 4 Iteration (for loops)......... 5 Iteration (while loops)........ 6 String
More informationData Structures. Lists, Tuples, Sets, Dictionaries
Data Structures Lists, Tuples, Sets, Dictionaries Collections Programs work with simple values: integers, floats, booleans, strings Often, however, we need to work with collections of values (customers,
More informationBlitz2D Newbies: Definitive Guide to Types by MutteringGoblin
Blitz2D Newbies: Definitive Guide to Types by MutteringGoblin Types are probably the hardest thing to understand about Blitz Basic. If you're using types for the first time, you've probably got an uneasy
More informationCSE 140 wrapup. Michael Ernst CSE 140 University of Washington
CSE 140 wrapup Michael Ernst CSE 140 University of Washington Progress in 10 weeks 10 weeks ago: you knew no programming Goals: Computational problem-solving Python programming language Experience with
More informationCS/IT 114 Introduction to Java, Part 1 FALL 2016 CLASS 10: OCT. 6TH INSTRUCTOR: JIAYIN WANG
CS/IT 114 Introduction to Java, Part 1 FALL 2016 CLASS 10: OCT. 6TH INSTRUCTOR: JIAYIN WANG 1 Notice Assignments Reading Assignment: Chapter 3: Introduction to Parameters and Objects The Class 10 Exercise
More informationReviewing for the Midterm Covers chapters 1 to 5, 7 to 9. Instructor: Scott Kristjanson CMPT 125/125 SFU Burnaby, Fall 2013
Reviewing for the Midterm Covers chapters 1 to 5, 7 to 9 Instructor: Scott Kristjanson CMPT 125/125 SFU Burnaby, Fall 2013 2 Things to Review Review the Class Slides: Key Things to Take Away Do you understand
More information6.001 Notes: Section 6.1
6.001 Notes: Section 6.1 Slide 6.1.1 When we first starting talking about Scheme expressions, you may recall we said that (almost) every Scheme expression had three components, a syntax (legal ways of
More informationModule 1: Introduction RStudio
Module 1: Introduction RStudio Contents Page(s) Installing R and RStudio Software for Social Network Analysis 1-2 Introduction to R Language/ Syntax 3 Welcome to RStudio 4-14 A. The 4 Panes 5 B. Calculator
More informationWelcome to... CS113: Introduction to C
Welcome to... CS113: Introduction to C Instructor: Erik Sherwood E-mail: wes28@cs.cornell.edu Course Website: http://www.cs.cornell.edu/courses/cs113/2005fa/ The website is linked to from the courses page
More informationQUIZ Friends class Y;
QUIZ Friends class Y; Is a forward declaration neeed here? QUIZ Friends QUIZ Friends - CONCLUSION Forward (a.k.a. incomplete) declarations are needed only when we declare member functions as friends. They
More informationBinary Relations Part One
Binary Relations Part One Outline for Today Binary Relations Reasoning about connections between objects. Equivalence Relations Reasoning about clusters. A Fundamental Theorem How do we know we have the
More informationCS 1110 SPRING 2016: GETTING STARTED (Jan 27-28) First Name: Last Name: NetID:
CS 1110 SPRING 2016: GETTING STARTED (Jan 27-28) http://www.cs.cornell.edu/courses/cs1110/2016sp/labs/lab01/lab01.pdf First Name: Last Name: NetID: Goals. Learning a computer language is a lot like learning
More informationSkill 1: Multiplying Polynomials
CS103 Spring 2018 Mathematical Prerequisites Although CS103 is primarily a math class, this course does not require any higher math as a prerequisite. The most advanced level of mathematics you'll need
More informationProcessor. Lecture #2 Number Rep & Intro to C classic components of all computers Control Datapath Memory Input Output }
CS61C L2 Number Representation & Introduction to C (1) insteecsberkeleyedu/~cs61c CS61C : Machine Structures Lecture #2 Number Rep & Intro to C 2005-08-31 There is one handout today at the front and back
More informationThis chapter is intended to take you through the basic steps of using the Visual Basic
CHAPTER 1 The Basics This chapter is intended to take you through the basic steps of using the Visual Basic Editor window and writing a simple piece of VBA code. It will show you how to use the Visual
More informationCSSE 304 Assignment #13 (interpreter milestone #1) Updated for Fall, 2018
CSSE 304 Assignment #13 (interpreter milestone #1) Updated for Fall, 2018 Deliverables: Your code (submit to PLC server). A13 participation survey (on Moodle, by the day after the A13 due date). This is
More informationArtificial Intelligence Lecture 1
Artificial Intelligence Lecture 1 istrative Matters Webpage: www.aass.oru.se/~mbl/ai Examiner: Mathias Broxvall Assistant: Lia Susana d.c. Silva Lopez Schedule 20 hours/week on this course. 4 hours lectures,
More informationIntroduction - SENG 330. Object-Oriented Analysis and Design
Introduction - SENG 330 Object-Oriented Analysis and Design SENG 330 Fall 2006 Instructor: Alex Thomo Email: thomo@cs.uvic.ca Office hours: Office Hours: TWF 12:30-1:30 p.m. Location: ECS 556 Objective:
More informationJAVA An overview for C++ programmers
JAVA An overview for C++ programmers Wagner Truppel wagner@cs.ucr.edu edu March 1st, 2004 The early history James Gosling, Sun Microsystems Not the usual start for a prog.. language Consumer electronics,
More informationThese are notes for the third lecture; if statements and loops.
These are notes for the third lecture; if statements and loops. 1 Yeah, this is going to be the second slide in a lot of lectures. 2 - Dominant language for desktop application development - Most modern
More informationGE PROBLEM SOVING AND PYTHON PROGRAMMING. Question Bank UNIT 1 - ALGORITHMIC PROBLEM SOLVING
GE8151 - PROBLEM SOVING AND PYTHON PROGRAMMING Question Bank UNIT 1 - ALGORITHMIC PROBLEM SOLVING 1) Define Computer 2) Define algorithm 3) What are the two phases in algorithmic problem solving? 4) Why
More information>print "hello" [a command in the Python programming language]
What Is Programming? Programming is the process of writing the code of computer programs. A program is just a sequence of instructions that a computer is able to read and execute, to make something happen,
More informationStanford CS193p. Developing Applications for ios Fall Stanford CS193p. Fall 2013
Developing Applications for ios -14 Today What is this class all about? Description Prerequisites Homework / Final Project ios Overview What s in ios? MVC Object-Oriented Design Concept Objective C (Time
More informationGraphing on Excel. Open Excel (2013). The first screen you will see looks like this (it varies slightly, depending on the version):
Graphing on Excel Open Excel (2013). The first screen you will see looks like this (it varies slightly, depending on the version): The first step is to organize your data in columns. Suppose you obtain
More information(Refer Slide Time: 1:27)
Data Structures and Algorithms Dr. Naveen Garg Department of Computer Science and Engineering Indian Institute of Technology, Delhi Lecture 1 Introduction to Data Structures and Algorithms Welcome to data
More informationHow to approach a computational problem
How to approach a computational problem A lot of people find computer programming difficult, especially when they first get started with it. Sometimes the problems are problems specifically related to
More information4. Use a loop to print the first 25 Fibonacci numbers. Do you need to store these values in a data structure such as an array or list?
1 Practice problems Here is a collection of some relatively straightforward problems that let you practice simple nuts and bolts of programming. Each problem is intended to be a separate program. 1. Write
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 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 informationCS152: Programming Languages. Lecture 11 STLC Extensions and Related Topics. Dan Grossman Spring 2011
CS152: Programming Languages Lecture 11 STLC Extensions and Related Topics Dan Grossman Spring 2011 Review e ::= λx. e x e e c v ::= λx. e c τ ::= int τ τ Γ ::= Γ, x : τ (λx. e) v e[v/x] e 1 e 1 e 1 e
More informationSigned umbers. Sign/Magnitude otation
Signed umbers So far we have discussed unsigned number representations. In particular, we have looked at the binary number system and shorthand methods in representing binary codes. With m binary digits,
More informationModule 10A Lecture - 20 What is a function? Why use functions Example: power (base, n)
Programming, Data Structures and Algorithms Prof. Shankar Balachandran Department of Computer Science and Engineering Indian Institute of Technology, Madras Module 10A Lecture - 20 What is a function?
More informationIntroduction to C/C++ Programming
Chapter 1 Introduction to C/C++ Programming This book is about learning numerical programming skill and the software development process. Therefore, it requires a lot of hands-on programming exercises.
More informationWeek One: Introduction A SHORT INTRODUCTION TO HARDWARE, SOFTWARE, AND ALGORITHM DEVELOPMENT
Week One: Introduction A SHORT INTRODUCTION TO HARDWARE, SOFTWARE, AND ALGORITHM DEVELOPMENT Outline In this chapter you will learn: About computer hardware, software and programming How to write and execute
More informationWorking with Data and Charts
PART 9 Working with Data and Charts In Excel, a formula calculates a value based on the values in other cells of the workbook. Excel displays the result of a formula in a cell as a numeric value. A function
More informationSub Programs. To Solve a Problem, First Make It Simpler
Sub Programs To Solve a Problem, First Make It Simpler Top Down Design Top Down Design Start with overall goal. Break Goal into Sub Goals Break Sub Goals into Sub Sub Goals Until the Sub-Sub Sub-Sub Sub-Sub
More information