CSCI 141 Computer Programming I. Filip Jagodzinski

Size: px
Start display at page:

Download "CSCI 141 Computer Programming I. Filip Jagodzinski"

Transcription

1 Filip Jagodzinski

2 Announcement Using online resources for help I want you to learn from others I want you to learn how to use (good) online resources Learning on your own is a good thing

3 Announcement Using online resources for help I want you to learn from others I want you to learn how to use (good) online resources Learning on your own is a good thing Two scenarios : You learn about the break or continue keywords, by reading a post on [insert your favorite website here] You learn about sys.exit(0) or os._exit(0), by reading a post on [insert your favorite website here]

4 Announcement Using online resources for help I want you to learn from others I want you to learn how to use (good) online resources Learning on your own is a good thing Two scenarios : You learn about the break or continue keywords, by reading a post on [insert your favorite website here] You learn about sys.exit(0) or os._exit(0), by reading a post on [insert your favorite website here] Which of the two scenarios is allowed? And how can you determine if you ve learned about these python features (in which case you can use them), or if you ve simply cut-and-paste (which is plagiarism)?

5 From Last Time Motivation : Computers (via computer programs) are reaaaaaly good at monotonous tasks. Humans no so much

6 From Last Time Motivation : Computers (via computer programs) are reaaaaaly good at monotonous tasks. Humans no so much For a bank Account balance of , and assuming that each year the account earns 10% interest that is added to the account s value, what is the account s value after 5 years? One by-hand approach is the following:

7 From Last Time Motivation : Computers (via computer programs) are reaaaaaly good at monotonous tasks. Humans no so much For a bank Account balance of , and assuming that each year the account earns 10% interest that is added to the account s value, what is the account s value after 5 years? One by-hand approach is the following: But if we want to compute the account s value after 500 years.

8 From Last Time Task : Be able to explain in your own words what the above piece of code accomplishes

9 From Last Time Task : Be able to explain in your own words what the above piece of code accomplishes The keyword for specifies functionality in python for repeatedly performing a task. The iterator variable x takes on values output by the range function. For EACH value of x, the code block (or body) of the for loop is executed. x=0 x=1 x=2

10 From Last Time Motivation : Computers (via computer programs) are reaaaaaly good at monotonous tasks. Humans no so much For a bank Account balance of , and assuming that each year the account earns 10% interest that is added to the account s value, what is the account s value after 500 years?

11 From Last Time Motivation : Computers (via computer programs) are reaaaaaly good at monotonous tasks. Humans no so much For a bank Account balance of , and assuming that each year the account earns 10% interest that is added to the account s value, what is the account s value after 500 years? Q: Where is the code block for the for loop?

12 From Last Time Motivation : Computers (via computer programs) are reaaaaaly good at monotonous tasks. Humans no so much For a bank Account balance of , and assuming that each year the account earns 10% interest that is added to the account s value, what is the account s value after 500 years? Q: How many times will the balance be printed?

13 From Last Time Motivation : Computers (via computer programs) are reaaaaaly good at monotonous tasks. Humans no so much For a bank Account balance of , and assuming that each year the account earns 10% interest that is added to the account s value, what is the account s value after 500 years? Q: Why are we using the range 0 through 500?

14 From Last Time Motivation : Computers (via computer programs) are reaaaaaly good at monotonous tasks. Humans no so much For a bank Account balance of , and assuming that each year the account earns 10% interest that is added to the account s value, what is the account s value after 500 years? Q: Could we have used range(1,501)?

15 Today s quiz Please do not us a calculator, computer, smart phone, etc. (The quizzes are not an exercise in how well you can type code into Thonny)

16 Today Incrementing in for loops Accumulators A more detailed example import

17 Other forms of for-loops Task : Print only the even integers greater than -1 but less than 100. How could you do this using Python and what you ve learned already? In class exercise 1

18 Other forms of for-loops Task : Print only the even integers greater than -1 but less than 100. How could you do this using Python and what you ve learned already? In class exercise 1 Would this work? Why or why not?

19 Other forms of for-loops Task : Print only the even integers greater than -1 but less than 100. How could you do this using Python and what you ve learned already? In class exercise 1 Would this work? Why or why not? No. This prints out ALL numbers from 0 through 99. However you ve learned of an operator that you can use in combination with the equality operator to see if a number divisible by another number gives a zero remainder

20 Other forms of for-loops Task : Print only the even integers greater than -1 but less than 100. How could you do this using Python and what you ve learned already? In class exercise 1 This is one of many possible solutions Step-by-step walk through

21 Other forms of for-loops Task : Print only the even integers greater than -1 but less than 100. How could you do this using Python and what you ve learned already? In class exercise 1 This will generate a list of numbers from 0 up to but not including 100 0, 1, 2, 3, 4,, 99

22 Other forms of for-loops Task : Print only the even integers greater than -1 but less than 100. How could you do this using Python and what you ve learned already? In class exercise 1 Notice the indentation : This is the code block (or body) of the for loop Q: When is it executed?

23 Other forms of for-loops Task : Print only the even integers greater than -1 but less than 100. How could you do this using Python and what you ve learned already? In class exercise 1 Notice the indentation : This is the code block for the if statement. Q: When is this code block executed?

24 Other forms of for-loops Task : Print only the even integers greater than -1 but less than 100. How could you do this using Python and what you ve learned already? In class exercise 1 This will generate a list of numbers from 0 up to but not including 100 0, 1, 2, 3, 4,, 99 x is the loop (or iterator) variable, so for each value of x, the code block (or body) of the for loop will be executed

25 Other forms of for-loops Task : Print only the even integers greater than -1 but less than 100. How could you do this using Python and what you ve learned already? In class exercise 1 Q: What is 0 modulus 2? This will generate a list of numbers from 0 up to but not including 100 0, 1, 2, 3, 4,, 99 When x=0, the code block will be executed. What does the code block do? It checks if 0 modulus 2 is equal to 0. If it is, then the value of x is printed

26 Other forms of for-loops Task : Print only the even integers greater than -1 but less than 100. How could you do this using Python and what you ve learned already? In class exercise 1 Q: What is 0 modulus 2? This will generate a list of numbers from 0 up to but not including 100 0, 1, 2, 3, 4,, When x=0, the code block will be executed. What does the code block do? It checks if 0 modulus 2 is equal to 0. If it is, then the value of x is printed

27 Other forms of for-loops Task : Print only the even integers greater than -1 but less than 100. How could you do this using Python and what you ve learned already? In class exercise 1 Q: What is 0 modulus 2? This will generate a list of numbers from 0 up to but not including 100 0, 1, 2, 3, 4,, 99 When x=0, the code block will be executed. What does the code block do? It checks if 0 modulus 2 is equal to 0. If it is, then the value of x is printed

28 Other forms of for-loops Task : Print only the even integers greater than -1 but less than 100. How could you do this using Python and what you ve learned already? In class exercise 1 Q: What is 0 modulus 2? 0 r This will generate a list of numbers from 0 up to but not including 100 0, 1, 2, 3, 4,, 99 When x=0, the code block will be executed. What does the code block do? It checks if 0 modulus 2 is equal to 0. If it is, then the value of x is printed

29 Other forms of for-loops Task : Print only the even integers greater than -1 but less than 100. How could you do this using Python and what you ve learned already? In class exercise 1 Output 0 This will generate a list of numbers from 0 up to but not including 100 0, 1, 2, 3, 4,, 99 When x=0, the code block will be executed. What does the code block do? It checks if 0 modulus 2 is equal to 0. If it is, then the value of x is printed

30 Other forms of for-loops Task : Print only the even integers greater than -1 but less than 100. How could you do this using Python and what you ve learned already? In class exercise 1 Output 0 This will generate a list of numbers from 0 up to but not including 100 0, 1, 2, 3, 4,, 99 When x=1, the code block will be executed. What does the code block do? It checks if 1 modulus 2 is equal to 0. If it is, then the value of x is printed

31 Other forms of for-loops Task : Print only the even integers greater than -1 but less than 100. How could you do this using Python and what you ve learned already? In class exercise 1 Output 0 2 This will generate a list of numbers from 0 up to but not including 100 0, 1, 2, 3, 4,, 99 When x=2, the code block will be executed. What does the code block do? It checks if 2 modulus 2 is equal to 0. If it is, then the value of x is printed

32 Other forms of for-loops Task : Print only the even integers greater than -1 but less than 100. How could you do this using Python and what you ve learned already? In class exercise 1 Output 0 2 This will generate a list of numbers from 0 up to but not including 100 0, 1, 2, 3, 4,, 99 When x=3, the code block will be executed. What does the code block do? It checks if 3 modulus 2 is equal to 0. If it is, then the value of x is printed

33 Other forms of for-loops Task : Print only the even integers greater than -1 but less than 100. How could you do this using Python and what you ve learned already? In class exercise 1 Output This will generate a list of numbers from 0 up to but not including 100 0, 1, 2, 3, 4,, 99 When x=4, the code block will be executed. What does the code block do? It checks if 4 modulus 2 is equal to 0. If it is, then the value of x is printed

34 Other forms of for-loops Task : Print only the even integers greater than -1 but less than 100. How could you do this using Python and what you ve learned already? In class exercise 1 Output This will generate a list of numbers from 0 up to but not including 100 0, 1, 2, 3, 4,, 99 When x=99, the code block will be executed. What does the code block do? It checks if 99 modulus 2 is equal to 0. If it is, then the value of x is printed

35 The most recent take-home exercise Write a program that On-the-fly coding/demonstration Prompts the user for an upper limit. Assume the user will always input (via the keyboard) an integer. Prompts the user for a lower limit. Assume the user will always input (via the keyboard) an integer that is less than the upper limit. Prints to the screen all multiples of the lower limit number in the range from the lower limit to the upper limit (inclusive) Two invocations of such a program are shown below

36 Other forms of for-loops Task : Print only the even integers greater than -1 but less than 100. How could you do this using Python and what you ve learned already? In class exercise 1 Output Q: Is there another way to accomplish this same task? Q: Can this be done with 2 lines of code?

37 Other forms of for-loops Task : Print only the even integers greater than -1 but less than 100. How could you do this using Python and what you ve learned already? In class exercise 1 Q: Is there another way to accomplish this same task? The range function can have a third argument, that specifies the increment value of each successive number

38 Other forms of for-loops Task : Print only the even integers greater than -1 but less than 100. How could you do this using Python and what you ve learned already? In class exercise 1 Q: Is there another way to accomplish this same task? The range function can have a third argument, that specifies the increment value of each successive number This specifies generate numbers from 0 up to but not including 100, in increments of 2

39 Other forms of for-loops Task : Print only the even integers greater than -1 but less than 100. How could you do this using Python and what you ve learned already? In class exercise 1 Q: Do these pieces of code output the same thing?

40 Other forms of for-loops Task : Print only the even integers greater than -1 but less than 100. How could you do this using Python and what you ve learned already? In class exercise 1 Q: Do these pieces of code output the same thing? They do. Q: Is one better than the other?

41 Other forms of for-loops Task : Print only the even integers greater than -1 but less than 100. How could you do this using Python and what you ve learned already? In class exercise 1 Q: Do these pieces of code output the same thing? They do. Q: Is one better than the other? Not necessarily

42 For loops another tricky example Q: What does the following code output? A. B. C. D. The value of avalue is 4 The value of avalue is 6 The value of avalue is 6 The value of avalue is 4 nothing An error message because the code has an error

43 For loops another tricky example Q: What does the following code output? A. B. C. D. The value of avalue is 4 The value of avalue is 6 The value of avalue is 6 The value of avalue is 4 nothing An error message because the code has an error As a first step, what list of numbers does range(4, 6, -2) generate?

44 For loops another tricky example Q: What does the following code output? A. B. C. D. The value of avalue is 4 The value of avalue is 6 The value of avalue is 6 The value of avalue is 4 nothing An error message because the code has an error As a first step, what list of numbers does range(4, 6, -2) generate? An empty list. Starting at 4, proceeding in increments of -2 until it reaching 6 there is no such list.

45 For loops another tricky example Q: What does the following code output? A. B. C. D. The value of avalue is 4 The value of avalue is 6 The value of avalue is 6 The value of avalue is 4 nothing An error message because the code has an error 4,6,-2 range { }

46 For loops another tricky example Q: What does the following code output? A. B. C. D. The value of avalue is 4 The value of avalue is 6 The value of avalue is 6 The value of avalue is 4 nothing An error message because the code has an error 4,6,-2 range { } anum assumes, in turn, each of the values in the list generated by range, but range returns a list with no elements, therefore how many times does the code block for the for loop execute?

47 For loops another tricky example Q: What does the following code output? never executed A. B. C. D. The value of avalue is 4 The value of avalue is 6 The value of avalue is 6 The value of avalue is 4 nothing An error message because the code has an error 4,6,-2 range { } Zero times. Therefore, the variable avalue is never declared nor assigned a value, so when the print statement attempts to use the value for the variable avalue

48 For loops another tricky example Q: What does the following code output? never executed A. B. C. D. The value of avalue is 4 The value of avalue is 6 The value of avalue is 6 The value of avalue is 4 nothing An error message because the code has an error There is another reason called scope why this code produces an error. We ll talk about variable scope when we start writing our own functions.

49 For loops another tricky example Q: What does the following code output? never executed A. B. C. D. The value of avalue is 4 The value of avalue is 6 The value of avalue is 6 The value of avalue is 4 nothing An error message because the code has an error An error occurs. Specifically, a Name Error, which occurs when you try to use a variable before it has been assigned a value

50 Accumulators Remember that the code block (or body) of a for loop can contain multiple lines of code. Q: What does this code accomplish

51 Accumulators Remember that the code block (or body) of a for loop can contain multiple lines of code. Identify the code block Q: How many iterations are performed? Q: What is the output?

52 Accumulators Remember that the code block (or body) of a for loop can contain multiple lines of code. These are often referred to as accumulators because they are updated (or accumulate values) in the body of the for loop.

53 Accumulators Q: What is the output of the following code? In-class exercise 2 On-the board explanation of how this code is executed

54 Import There is functionality available for your use which is part of the core of python. Lab 4 teaches you how to generate random numbers, and that capability is in the random module. To use the capability in a module, you must explicitly import it

55 Import There is functionality available for your use which is part of the core of python. Lab 4 teaches you how to generate random numbers, and that capability is in the random module. To use the capability in a module, you must explicitly import it Q: What functionality and/or capabilities are available for your use in the random module?

56 Import There is functionality available for your use which is part of the core of python. Lab 4 teaches you how to generate random numbers, and that capability is in the random module. To use the capability in a module, you must explicitly import it Q: What functionality and/or capabilities are available for your use in the random module? Just as existing functions in python contain code that somebody has written and you should think of as a black box, the random module, too, has code that somebody has written and which is now part of python. You can see the code if you d like (demo)

57 Import There is functionality available for your use which is part of the core of python. Lab 4 teaches you how to generate random numbers, and that capability is in the random module. To use the capability in a module, you must explicitly import it Q: What functionality and/or capabilities are available for your use in the random module? Don t worry about the code that is inside the random module. Just as You existing don t functions need to memorize in python it contain If you code read that somebody it you won t has understand much of what is there written You ll and you learn should about think classes, of a the self keyword, class black box, variables, the random overriding, module, inheritance, too, overloading, class has code functions, that somebody etc. in later has CS written courses and which is now part of python. For You the can time see being the code just be if you d thankful like that somebody has written these modules, which allows you to write fairly complicated programs

58 Import Task : Write a program that prints 11 random numbers Q: How do you start

59 Import Task : Write a program that prints 11 random numbers Q: How do you start Looking at the API, there are many functions available for your use when you import the random module. They include : random() getrandbits(k) sample(population, k) randint(a,b) randrange(start, stop, step) randrange(start, stop)

60 Import Task : Write a program that prints 11 random numbers Q: How do you start Looking at the API, there are many functions available for your use when you import the random module. They include : random() Assume you select this one getrandbits(k) sample(population, k) randint(a,b) randrange(start, stop, step) randrange(start, stop) You ll gain experience with many of these. Which one you select to use is dependent on the problem that you want to solve.

61 Import Task : Write a program that prints 11 random numbers random() avar = random() print(avar) Q: Does this work? Why or why not?

62 Import Task : Write a program that prints 11 random numbers random() avar = random() print(avar) Q: Does this work? Why or why not? This generates an error because in order to use the functions in a module (that is not part of the core of python) you must first import that module Q: What is the fix?

63 Import Task : Write a program that prints 11 random numbers random() import random print(random.random()) print(random.random()) print(random.random()) print(random.random()) print(random.random()) print(random.random()) print(random.random()) print(random.random()) print(random.random()) print(random.random()) print(random.random()) Q: What does this code output? In order to invoke a function that is available in a module, first write the name of the module, followed by dot, followed by the name of the function.

64 Import Task : Write a program that prints 11 random numbers random() import random print(random.random()) print(random.random()) print(random.random()) print(random.random()) print(random.random()) print(random.random()) print(random.random()) print(random.random()) print(random.random()) print(random.random()) print(random.random()) Q: What does this code output? This is OKAY, but what if you want integers!

65 Import Task : Write a program that prints 11 random numbers integers In class exercise 3 (take home) random() getrandbits(k) sample(population, k) randint(a,b) randrange(start, stop, step) randrange(start, stop) Back to the API Write two programs, which use DIFFERENT functions from random, and which print to the screen 11 random integers

66 Take home exercise Write python code that will print the first 10 positive multiples of the number 34 whose ones digit is NOT 0 nor 5. Hint : the digits are 34, 68, 102, 136, 204, 238, 272, 306, 374, 408

67 Up next Lists Functions

Lecture Transcript While and Do While Statements in C++

Lecture Transcript While and Do While Statements in C++ Lecture Transcript While and Do While Statements in C++ Hello and welcome back. In this lecture we are going to look at the while and do...while iteration statements in C++. Here is a quick recap of some

More information

Module 10A Lecture - 20 What is a function? Why use functions Example: power (base, n)

Module 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 information

Discussion 4. Data Abstraction and Sequences

Discussion 4. Data Abstraction and Sequences Discussion 4 Data Abstraction and Sequences Data Abstraction: The idea of data abstraction is to conceal the representation of some data and to instead reveal a standard interface that is more aligned

More information

Intro. Scheme Basics. scm> 5 5. scm>

Intro. 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 information

Announcements. Lab Friday, 1-2:30 and 3-4:30 in Boot your laptop and start Forte, if you brought your laptop

Announcements. Lab Friday, 1-2:30 and 3-4:30 in Boot your laptop and start Forte, if you brought your laptop Announcements Lab Friday, 1-2:30 and 3-4:30 in 26-152 Boot your laptop and start Forte, if you brought your laptop Create an empty file called Lecture4 and create an empty main() method in a class: 1.00

More information

CS1 Lecture 5 Jan. 25, 2019

CS1 Lecture 5 Jan. 25, 2019 CS1 Lecture 5 Jan. 25, 2019 HW1 due Monday, 9:00am. Notes: Do not write all the code at once before starting to test. Take tiny steps. Write a few lines test... add a line or two test... add another line

More information

19 Much that I bound, I could not free; Much that I freed returned to me. Lee Wilson Dodd

19 Much that I bound, I could not free; Much that I freed returned to me. Lee Wilson Dodd 19 Much that I bound, I could not free; Much that I freed returned to me. Lee Wilson Dodd Will you walk a little faster? said a whiting to a snail, There s a porpoise close behind us, and he s treading

More information

Iteration Preview of Coming Attractions The Need to Get Your Act Together A Process for Developing While Statements

Iteration Preview of Coming Attractions The Need to Get Your Act Together A Process for Developing While Statements Iteration Preview of Coming Attractions In this unit be sure to look for a five-step process for developing while statements tracing while statements The Need to Get Your Act Together As you probably know

More information

Special Section: Building Your Own Compiler

Special Section: Building Your Own Compiler cshtp6_19_datastructures_compiler.fm Page 1 Tuesday, February 14, 2017 10:31 AM 1 Chapter 19 Special Section: Building Your Own Compiler In Exercises8.31 8.33, we introduced Simpletron Machine Language

More information

Computer and Programming: Lab 1

Computer and Programming: Lab 1 01204111 Computer and Programming: Lab 1 Name ID Section Goals To get familiar with Wing IDE and learn common mistakes with programming in Python To practice using Python interactively through Python Shell

More information

CMSC 201 Spring 2019 Lab 06 Lists

CMSC 201 Spring 2019 Lab 06 Lists CMSC 201 Spring 2019 Lab 06 Lists Assignment: Lab 06 Lists Due Date: Thursday, March 7th by 11:59:59 PM Value: 10 points This week s lab will put into practice the concepts you learned about lists: indexing,

More information

Software Design and Analysis for Engineers

Software Design and Analysis for Engineers Software Design and Analysis for Engineers by Dr. Lesley Shannon Email: lshannon@ensc.sfu.ca Course Website: http://www.ensc.sfu.ca/~lshannon/courses/ensc251 Simon Fraser University Slide Set: 2 Date:

More information

CSCI 1100L: Topics in Computing Lab Lab 11: Programming with Scratch

CSCI 1100L: Topics in Computing Lab Lab 11: Programming with Scratch CSCI 1100L: Topics in Computing Lab Lab 11: Programming with Scratch Purpose: We will take a look at programming this week using a language called Scratch. Scratch is a programming language that was developed

More information

LOOPS. Repetition using the while statement

LOOPS. Repetition using the while statement 1 LOOPS Loops are an extremely useful feature in any programming language. They allow you to direct the computer to execute certain statements more than once. In Python, there are two kinds of loops: while

More information

Iterators & Generators

Iterators & Generators Iterators & Generators Sequences A sequence is something that you can: Index into Get the length of What are some examples of sequences? Sequences We ve been working with sequences all semester! Examples:

More information

CMSC 201 Spring 2017 Lab 05 Lists

CMSC 201 Spring 2017 Lab 05 Lists CMSC 201 Spring 2017 Lab 05 Lists Assignment: Lab 05 Lists Due Date: During discussion, February 27th through March 2nd Value: 10 points (8 points during lab, 2 points for Pre Lab quiz) This week s lab

More information

CMSC 201 Computer Science I for Majors

CMSC 201 Computer Science I for Majors CMSC 201 Computer Science I for Majors Lecture 02 Intro to Python Syllabus Last Class We Covered Grading scheme Academic Integrity Policy (Collaboration Policy) Getting Help Office hours Programming Mindset

More information

} Evaluate the following expressions: 1. int x = 5 / 2 + 2; 2. int x = / 2; 3. int x = 5 / ; 4. double x = 5 / 2.

} Evaluate the following expressions: 1. int x = 5 / 2 + 2; 2. int x = / 2; 3. int x = 5 / ; 4. double x = 5 / 2. Class #10: Understanding Primitives and Assignments Software Design I (CS 120): M. Allen, 19 Sep. 18 Java Arithmetic } Evaluate the following expressions: 1. int x = 5 / 2 + 2; 2. int x = 2 + 5 / 2; 3.

More information

Implementing Continuations

Implementing Continuations Implementing Continuations sk and dbtucker 2002-10-18 1 Changing Representations Now that we ve seen how continuations work, let s study how to implement them in an interpreter. For this lecture onward,

More information

1. What type of error produces incorrect results but does not prevent the program from running? a. syntax b. logic c. grammatical d.

1. What type of error produces incorrect results but does not prevent the program from running? a. syntax b. logic c. grammatical d. Gaddis: Starting Out with Python, 2e - Test Bank Chapter Two MULTIPLE CHOICE 1. What type of error produces incorrect results but does not prevent the program from running? a. syntax b. logic c. grammatical

More information

Lab 2: Structured Program Development in C

Lab 2: Structured Program Development in C Lab 2: Structured Program Development in C (Part A: Your first C programs - integers, arithmetic, decision making, Part B: basic problem-solving techniques, formulating algorithms) Learning Objectives

More information

HOUR 4 Understanding Events

HOUR 4 Understanding Events HOUR 4 Understanding Events It s fairly easy to produce an attractive interface for an application using Visual Basic.NET s integrated design tools. You can create beautiful forms that have buttons to

More information

QUIZ. How could we disable the automatic creation of copyconstructors

QUIZ. How could we disable the automatic creation of copyconstructors QUIZ How could we disable the automatic creation of copyconstructors pre-c++11? What syntax feature did C++11 introduce to make the disabling clearer and more permanent? Give a code example. QUIZ How

More information

Chapter 2 Using Data. Instructor s Manual Table of Contents. At a Glance. Overview. Objectives. Teaching Tips. Quick Quizzes. Class Discussion Topics

Chapter 2 Using Data. Instructor s Manual Table of Contents. At a Glance. Overview. Objectives. Teaching Tips. Quick Quizzes. Class Discussion Topics Java Programming, Sixth Edition 2-1 Chapter 2 Using Data At a Glance Instructor s Manual Table of Contents Overview Objectives Teaching Tips Quick Quizzes Class Discussion Topics Additional Projects Additional

More information

QUIZ. How could we disable the automatic creation of copyconstructors

QUIZ. How could we disable the automatic creation of copyconstructors QUIZ How could we disable the automatic creation of copyconstructors pre-c++11? What syntax feature did C++11 introduce to make the disabling clearer and more permanent? Give a code example. Ch. 14: Inheritance

More information

CS102: Variables and Expressions

CS102: Variables and Expressions CS102: Variables and Expressions The topic of variables is one of the most important in C or any other high-level programming language. We will start with a simple example: int x; printf("the value of

More information

Spring 2017 CS 1110/1111 Exam 1

Spring 2017 CS 1110/1111 Exam 1 CS 1110/1111 Spring 2017 Exam 1 page 1 of 6 Spring 2017 CS 1110/1111 Exam 1 Bubble in your computing ID in the footer of this page. We use an optical scanner to read it, so fill in the bubbles darkly.

More information

CMSC 201 Fall 2018 Lab 04 While Loops

CMSC 201 Fall 2018 Lab 04 While Loops CMSC 201 Fall 2018 Lab 04 While Loops Assignment: Lab 04 While Loops Due Date: During discussion, September 24 th through September 27 th Value: 10 points (8 points during lab, 2 points for Pre Lab quiz)

More information

Unit 7: Algorithms and Python CS 101, Fall 2018

Unit 7: Algorithms and Python CS 101, Fall 2018 Unit 7: Algorithms and Python CS 101, Fall 2018 Learning Objectives After completing this unit, you should be able to: Identify whether a sequence of steps is an algorithm in the strict sense. Explain

More information

Assignment III: Graphing Calculator

Assignment III: Graphing Calculator Assignment III: Graphing Calculator Objective The goal of this assignment is to reuse your CalculatorBrain and CalculatorViewController objects to build a Graphing Calculator. By doing this, you will gain

More information

Name: Partner: Python Activity 9: Looping Structures: FOR Loops

Name: Partner: Python Activity 9: Looping Structures: FOR Loops Name: Partner: Python Activity 9: Looping Structures: FOR Loops Learning Objectives Students will be able to: Content: Explain the difference between while loop and a FOR loop Explain the syntax of a FOR

More information

Arrays: Higher Dimensional Arrays. CS0007: Introduction to Computer Programming

Arrays: Higher Dimensional Arrays. CS0007: Introduction to Computer Programming Arrays: Higher Dimensional Arrays CS0007: Introduction to Computer Programming Review If the == operator has two array variable operands, what is being compared? The reference variables held in the variables.

More information

CMSC201 Computer Science I for Majors

CMSC201 Computer Science I for Majors CMSC201 Computer Science I for Majors Lecture 15 For Loops All materials copyright UMBC and Dr. Katherine Gibson unless otherwise noted Last Class We Covered Two-dimensional lists Lists and functions Mutability

More information

Course Text. Course Description. Course Objectives. StraighterLine Introduction to Programming in C++

Course Text. Course Description. Course Objectives. StraighterLine Introduction to Programming in C++ Introduction to Programming in C++ Course Text Programming in C++, Zyante, Fall 2013 edition. Course book provided along with the course. Course Description This course introduces programming in C++ and

More information

Full file at

Full file at Java Programming, Fifth Edition 2-1 Chapter 2 Using Data within a Program At a Glance Instructor s Manual Table of Contents Overview Objectives Teaching Tips Quick Quizzes Class Discussion Topics Additional

More information

The Beauty and Joy of Computing 1 Lab Exercise 4: Starting a simple math tutor program and more interaction

The Beauty and Joy of Computing 1 Lab Exercise 4: Starting a simple math tutor program and more interaction The Beauty and Joy of Computing 1 Lab Exercise 4: Starting a simple math tutor program and more interaction Objectives By completing this lab exercise, you should learn to Create your own reporter and

More information

Chapter 5 Methods. public class FirstMethod { public static void main(string[] args) { double x= -2.0, y; for (int i = 1; i <= 5; i++ ) { y = f( x );

Chapter 5 Methods. public class FirstMethod { public static void main(string[] args) { double x= -2.0, y; for (int i = 1; i <= 5; i++ ) { y = f( x ); Chapter 5 Methods Sections Pages Review Questions Programming Exercises 5.1 5.11 142 166 1 18 2 22 (evens), 30 Method Example 1. This is of a main() method using a another method, f. public class FirstMethod

More information

CS113: Lecture 3. Topics: Variables. Data types. Arithmetic and Bitwise Operators. Order of Evaluation

CS113: Lecture 3. Topics: Variables. Data types. Arithmetic and Bitwise Operators. Order of Evaluation CS113: Lecture 3 Topics: Variables Data types Arithmetic and Bitwise Operators Order of Evaluation 1 Variables Names of variables: Composed of letters, digits, and the underscore ( ) character. (NO spaces;

More information

Ch. 12: Operator Overloading

Ch. 12: Operator Overloading Ch. 12: Operator Overloading Operator overloading is just syntactic sugar, i.e. another way to make a function call: shift_left(42, 3); 42

More information

COSC 2P95. Procedural Abstraction. Week 3. Brock University. Brock University (Week 3) Procedural Abstraction 1 / 26

COSC 2P95. Procedural Abstraction. Week 3. Brock University. Brock University (Week 3) Procedural Abstraction 1 / 26 COSC 2P95 Procedural Abstraction Week 3 Brock University Brock University (Week 3) Procedural Abstraction 1 / 26 Procedural Abstraction We ve already discussed how to arrange complex sets of actions (e.g.

More information

In this chapter you ll learn:

In this chapter you ll learn: Much that I bound, I could not free; Much that I freed returned to me. Lee Wilson Dodd Will you walk a little faster? said a whiting to a snail, There s a porpoise close behind us, and he s treading on

More information

CS 112 Introduction to Computing II. Wayne Snyder Computer Science Department Boston University

CS 112 Introduction to Computing II. Wayne Snyder Computer Science Department Boston University CS 112 Introduction to Computing II Wayne Snyder Department Boston University Today: Java expressions and operators concluded Java Statements: Conditionals: if/then, if/then/else Loops: while, for Next

More information

GIS 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 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 information

CSE : Python Programming

CSE : Python Programming CSE 399-004: Python Programming Lecture 2: Data, Classes, and Modules January 22, 2007 http://www.seas.upenn.edu/~cse39904/ Administrative things Teaching assistant Brian Summa (bsumma @ seas.upenn.edu)

More information

CS 102 Lab 3 Fall 2012

CS 102 Lab 3 Fall 2012 Name: The symbol marks programming exercises. Upon completion, always capture a screenshot and include it in your lab report. Email lab report to instructor at the end of the lab. Review of built-in functions

More information

CS1 Lecture 5 Jan. 26, 2018

CS1 Lecture 5 Jan. 26, 2018 CS1 Lecture 5 Jan. 26, 2018 HW1 due Monday, 9:00am. Notes: Do not write all the code at once (for Q1 and 2) before starting to test. Take tiny steps. Write a few lines test... add a line or two test...

More information

Intro to Python & Programming. C-START Python PD Workshop

Intro to Python & Programming. C-START Python PD Workshop Don t just buy a new video game, make one. Don t just download the latest app, help design it. Don t just play on your phone, program it. No one is born a computer scientist, but with a little hard work

More information

Creating a new data type

Creating a new data type Appendix B Creating a new data type Object-oriented programming languages allow programmers to create new data types that behave much like built-in data types. We will explore this capability by building

More information

n! = 1 * 2 * 3 * 4 * * (n-1) * n

n! = 1 * 2 * 3 * 4 * * (n-1) * n The Beauty and Joy of Computing 1 Lab Exercise 9: Problem self-similarity and recursion Objectives By completing this lab exercise, you should learn to Recognize simple self-similar problems which are

More information

Lecture 3. Input, Output and Data Types

Lecture 3. Input, Output and Data Types Lecture 3 Input, Output and Data Types Goals for today Variable Types Integers, Floating-Point, Strings, Booleans Conversion between types Operations on types Input/Output Some ways of getting input, and

More information

Coding Workshop. Learning to Program with an Arduino. Lecture Notes. Programming Introduction Values Assignment Arithmetic.

Coding Workshop. Learning to Program with an Arduino. Lecture Notes. Programming Introduction Values Assignment Arithmetic. Coding Workshop Learning to Program with an Arduino Lecture Notes Table of Contents Programming ntroduction Values Assignment Arithmetic Control Tests f Blocks For Blocks Functions Arduino Main Functions

More information

Lab 3. A Multi-Message Reader

Lab 3. A Multi-Message  Reader Lab 3 A Multi-Message Email Reader Due: Wed. 2/21 at 11PM (for Mon. aft. lab), Thurs. 2/22 at 5PM (for Mon. evening), or Thurs. 2/22 at 11 (for Tues. aft.) The goal in this week s lab is to exercise your

More information

Homework 3: Recursion Due: 11:59 PM, Sep 25, 2018

Homework 3: Recursion Due: 11:59 PM, Sep 25, 2018 CS17 Integrated Introduction to Computer Science Klein Homework 3: Recursion Due: 11:59 PM, Sep 25, 2018 Contents 1 Factorial 3 2 Fibonacci 4 3 Odds Only 5 4 Increment All 6 5 Frequency 6 6 Sublist 7 6.1

More information

Properties and Definitions

Properties and Definitions Section 0.1 Contents: Operations Defined Multiplication as an Abbreviation Visualizing Multiplication Commutative Properties Parentheses Associative Properties Identities Zero Product Answers to Exercises

More information

COM110: Lab 2 Numeric expressions, strings, and some file processing (chapters 3 and 5)

COM110: Lab 2 Numeric expressions, strings, and some file processing (chapters 3 and 5) COM110: Lab 2 Numeric expressions, strings, and some file processing (chapters 3 and 5) 1) Practice submitting programming assignment 1. Take a few arbitrary modules (.py files) that you have written and

More information

16 Multiple Inheritance and Extending ADTs

16 Multiple Inheritance and Extending ADTs Object-Oriented Design Lecture 16 CS 3500 Fall 2009 (Pucella) Tuesday, Nov 10, 2009 16 Multiple Inheritance and Extending ADTs We looked last time at inheritance and delegation as two ways to reuse implementation

More information

Object-Oriented Programming in Objective-C

Object-Oriented Programming in Objective-C In order to build the powerful, complex, and attractive apps that people want today, you need more complex tools than a keyboard and an empty file. In this section, you visit some of the concepts behind

More information

+ Inheritance. Sometimes we need to create new more specialized types that are similar to types we have already created.

+ Inheritance. Sometimes we need to create new more specialized types that are similar to types we have already created. + Inheritance + Inheritance Classes that we design in Java can be used to model some concept in our program. For example: Pokemon a = new Pokemon(); Pokemon b = new Pokemon() Sometimes we need to create

More information

Midterm 2. 7] Explain in your own words the concept of a handle class and how it s implemented in C++: What s wrong with this answer?

Midterm 2. 7] Explain in your own words the concept of a handle class and how it s implemented in C++: What s wrong with this answer? Midterm 2 7] Explain in your own words the concept of a handle class and how it s implemented in C++: What s wrong with this answer? A handle class is a pointer vith no visible type. What s wrong with

More information

Control Flow: Loop Statements

Control Flow: Loop Statements Control Flow: Loop Statements A loop repeatedly executes a of sub-statements, called the loop body. Python provides two kinds of loop statements: a for-loop and a while-loop. This exercise gives you practice

More information

Introduction to Programming

Introduction to Programming Introduction to Programming Python Lab 7: if Statement PythonLab7 lecture slides.ppt 14 November 2017 Ping Brennan (p.brennan@bbk.ac.uk) 1 Getting Started Create a new folder in your disk space with the

More information

3.Constructors and Destructors. Develop cpp program to implement constructor and destructor.

3.Constructors and Destructors. Develop cpp program to implement constructor and destructor. 3.Constructors and Destructors Develop cpp program to implement constructor and destructor. Constructors A constructor is a special member function whose task is to initialize the objects of its class.

More information

Getting Started. Excerpted from Hello World! Computer Programming for Kids and Other Beginners

Getting Started. Excerpted from Hello World! Computer Programming for Kids and Other Beginners Getting Started Excerpted from Hello World! Computer Programming for Kids and Other Beginners EARLY ACCESS EDITION Warren D. Sande and Carter Sande MEAP Release: May 2008 Softbound print: November 2008

More information

Grandparents U, 2018 Part 1

Grandparents U, 2018 Part 1 Grandparents U, 2018 Part 1 Computer Programming for Beginners Filip Jagodzinski Preliminaries : Course Website All of these slides will be provided for you online...... So for the time being just relax

More information

Macros & Streams Spring 2018 Discussion 9: April 11, Macros

Macros & Streams Spring 2018 Discussion 9: April 11, Macros CS 61A Macros & Streams Spring 2018 Discussion 9: April 11, 2018 1 Macros So far, we ve mostly explored similarities between the Python and Scheme languages. For example, the Scheme list data structure

More information

Implementing an Algorithm for Boomerang Fraction Sequences in Python

Implementing 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 information

STATS 507 Data Analysis in Python. Lecture 2: Functions, Conditionals, Recursion and Iteration

STATS 507 Data Analysis in Python. Lecture 2: Functions, Conditionals, Recursion and Iteration STATS 507 Data Analysis in Python Lecture 2: Functions, Conditionals, Recursion and Iteration Functions in Python We ve already seen examples of functions: e.g., type()and print() Function calls take the

More information

Table of Laplace Transforms

Table of Laplace Transforms Table of Laplace Transforms 1 1 2 3 4, p > -1 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 Heaviside Function 27 28. Dirac Delta Function 29 30. 31 32. 1 33 34. 35 36. 37 Laplace Transforms

More information

CSC148, Lab #4. General rules. Overview. Tracing recursion. Greatest Common Denominator GCD

CSC148, Lab #4. General rules. Overview. Tracing recursion. Greatest Common Denominator GCD CSC148, Lab #4 This document contains the instructions for lab number 4 in CSC148H. To earn your lab mark, you must actively participate in the lab. We mark you in order to ensure a serious attempt at

More information

What s the base case?

What s the base case? What s the base case? 13 How Recursion Works The last two chapters were about how to write recursive procedures. This chapter is about how to believe in recursive procedures, and about understanding the

More information

Assignment II: Foundation Calculator

Assignment II: Foundation Calculator Assignment II: Foundation Calculator Objective The goal of this assignment is to extend the CalculatorBrain from last week to allow inputting variables into the expression the user is typing into the calculator.

More information

CS18000: Problem Solving And Object-Oriented Programming

CS18000: Problem Solving And Object-Oriented Programming CS18000: Problem Solving And Object-Oriented Programming Data Abstraction: Inheritance 7 March 2011 Prof. Chris Clifton Data Abstraction Continued Abstract data type provides Well-defined interface Separation

More information

(Python) Chapter 3: Repetition

(Python) Chapter 3: Repetition (Python) Chapter 3: Repetition 3.1 while loop Motivation Using our current set of tools, repeating a simple statement many times is tedious. The only item we can currently repeat easily is printing the

More information

Iteration Part 1. Motivation for iteration. How does a for loop work? Execution model of a for loop. What is Iteration?

Iteration Part 1. Motivation for iteration. How does a for loop work? Execution model of a for loop. What is Iteration? Iteration Part 1 Motivation for iteration Display time until no more time left Iteration is a problemsolving strategy found in many situations. Keep coding until all test cases passed CS111 Computer Programming

More information

Types, Expressions, and States

Types, Expressions, and States 8/27: solved Types, Expressions, and States CS 536: Science of Programming, Fall 2018 A. Why? Expressions represent values in programming languages, relative to a state. Types describe common properties

More information

A student was asked to point out interface elements in this code: Answer: cout. What is wrong?

A student was asked to point out interface elements in this code: Answer: cout. What is wrong? A student was asked to point out interface elements in this code: Answer: cout. What is wrong? Clarification of the concept of INTERFACE The interface we ve been talking about in OOP is not the man-machine

More information

Lecture 5. Announcements: Today: Finish up functions in MIPS

Lecture 5. Announcements: Today: Finish up functions in MIPS Lecture 5 Announcements: Today: Finish up functions in MIPS 1 Control flow in C Invoking a function changes the control flow of a program twice. 1. Calling the function 2. Returning from the function In

More information

Physics 335 Intro to MicroControllers and the PIC Microcontroller

Physics 335 Intro to MicroControllers and the PIC Microcontroller Physics 335 Intro to MicroControllers and the PIC Microcontroller May 4, 2009 1 The Pic Microcontroller Family Here s a diagram of the Pic 16F84A, taken from Microchip s data sheet. Note that things are

More information

Unit E Step-by-Step: Programming with Python

Unit E Step-by-Step: Programming with Python Unit E Step-by-Step: Programming with Python Computer Concepts 2016 ENHANCED EDITION 1 Unit Contents Section A: Hello World! Python Style Section B: The Wacky Word Game Section C: Build Your Own Calculator

More information

C# Programming for Developers Course Labs Contents

C# Programming for Developers Course Labs Contents C# Programming for Developers Course Labs Contents C# Programming for Developers...1 Course Labs Contents...1 Introduction to C#...3 Aims...3 Your First C# Program...3 C# The Basics...5 The Aims...5 Declaring

More information

#2 Madlibs. Print out a story using the five variables into a text box. Make a procedure called madlibs that works with a Main and a Start procedure.

#2 Madlibs. Print out a story using the five variables into a text box. Make a procedure called madlibs that works with a Main and a Start procedure. #2 Madlibs We are going to work on a new project, a game called Madlibs. It will give us some more practice dealing with variables. We are going to follow a defined set of steps in programming this. They

More information

CS52 - Assignment 8. Due Friday 4/15 at 5:00pm.

CS52 - Assignment 8. Due Friday 4/15 at 5:00pm. CS52 - Assignment 8 Due Friday 4/15 at 5:00pm https://xkcd.com/859/ This assignment is about scanning, parsing, and evaluating. It is a sneak peak into how programming languages are designed, compiled,

More information

One of the hardest things you have to do is to keep track of three kinds of commands when writing and running computer programs. Those commands are:

One of the hardest things you have to do is to keep track of three kinds of commands when writing and running computer programs. Those commands are: INTRODUCTION Your first daily assignment is to modify the program test.py to make it more friendly. But first, you need to learn how to edit programs quickly and efficiently. That means using the keyboard

More information

Lecture 16: HashTables 10:00 AM, Mar 2, 2018

Lecture 16: HashTables 10:00 AM, Mar 2, 2018 CS18 Integrated Introduction to Computer Science Fisler, Nelson Lecture 16: HashTables 10:00 AM, Mar 2, 2018 Contents 1 Speeding up Lookup 1 2 Hashtables 2 2.1 Java HashMaps.......................................

More information

Name: Magpie Chatbot Lab: Student Guide. Introduction

Name: Magpie Chatbot Lab: Student Guide. Introduction Magpie Chatbot Lab: Student Guide Introduction From Eliza in the 1960s to Siri and Watson today, the idea of talking to computers in natural language has fascinated people. More and more, computer programs

More information

ENGINEERING 1020 Introduction to Computer Programming M A Y 2 6, R E Z A S H A H I D I

ENGINEERING 1020 Introduction to Computer Programming M A Y 2 6, R E Z A S H A H I D I ENGINEERING 1020 Introduction to Computer Programming M A Y 2 6, 2 0 1 0 R E Z A S H A H I D I Today s class Constants Assignment statement Parameters and calling functions Expressions Mixed precision

More information

Calculus II. Step 1 First, here is a quick sketch of the graph of the region we are interested in.

Calculus II. Step 1 First, here is a quick sketch of the graph of the region we are interested in. Preface Here are the solutions to the practice problems for my Calculus II notes. Some solutions will have more or less detail than other solutions. As the difficulty level of the problems increases less

More information

Lesson 13 - Vectors Dynamic Data Storage

Lesson 13 - Vectors Dynamic Data Storage Lesson 13 - Vectors Dynamic Data Storage Summary In this lesson we introduce the Standard Template Library by demonstrating the use of Vectors to provide dynamic storage of data elements. New Concepts

More information

Justification for Names and Optional Parameters

Justification for Names and Optional Parameters Justification for Names and Optional Parameters By Bill Wagner March 2012 Many developers ask why named and optional parameters were not added earlier to the C# language. As other languages have shown,

More information

Announcements. HW0 is posted on schedule, due next Friday at 9pm (pretty easy)

Announcements. HW0 is posted on schedule, due next Friday at 9pm (pretty easy) Branching Announcements HW0 is posted on schedule, due next Friday at 9pm (pretty easy) Office hours (attempt problems before going): - HW only or Lab only (check calendar) - Write name on whiteboard if

More information

6.00 Introduction to Computer Science and Programming Fall 2008

6.00 Introduction to Computer Science and Programming Fall 2008 MIT OpenCourseWare http://ocw.mit.edu 6.00 Introduction to Computer Science and Programming Fall 2008 For information about citing these materials or our Terms of Use, visit: http://ocw.mit.edu/terms.

More information

Computer Science 210 Data Structures Siena College Fall Topic Notes: Methods

Computer Science 210 Data Structures Siena College Fall Topic Notes: Methods Computer Science 210 Data Structures Siena College Fall 2017 Topic Notes: Methods As programmers, we often find ourselves writing the same or similar code over and over. We learned that we can place code

More information

ACORN.COM CS 1110 SPRING 2012: ASSIGNMENT A1

ACORN.COM CS 1110 SPRING 2012: ASSIGNMENT A1 ACORN.COM CS 1110 SPRING 2012: ASSIGNMENT A1 Due to CMS by Tuesday, February 14. Social networking has caused a return of the dot-com madness. You want in on the easy money, so you have decided to make

More information

Text Input and Conditionals

Text Input and Conditionals Text Input and Conditionals Text Input Many programs allow the user to enter information, like a username and password. Python makes taking input from the user seamless with a single line of code: input()

More information

Anatomy of a Class Encapsulation Anatomy of a Method

Anatomy of a Class Encapsulation Anatomy of a Method Writing Classes Writing Classes We've been using predefined classes. Now we will learn to write our own classes to define objects Chapter 4 focuses on: class definitions instance data encapsulation and

More information

Media Computation. Lecture 16.1, December 8, 2008 Steve Harrison

Media Computation. Lecture 16.1, December 8, 2008 Steve Harrison Media Computation Lecture 16.1, December 8, 2008 Steve Harrison Today -- Details of Creating Classes From requirements to classes Creating a class that will simulate a number game Practice going from requirements

More information

Hello, World! An Easy Intro to Python & Programming. Jack Rosenthal

Hello, World! An Easy Intro to Python & Programming. Jack Rosenthal An Easy Intro to Python & Programming Don t just buy a new video game, make one. Don t just download the latest app, help design it. Don t just play on your phone, program it. No one is born a computer

More information

Reviewing 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 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 information

CS 330 Homework Comma-Separated Expression

CS 330 Homework Comma-Separated Expression CS 330 Homework Comma-Separated Expression 1 Overview Your responsibility in this homework is to build an interpreter for text-based spreadsheets, which are essentially CSV files with formulas or expressions

More information

Have the students look at the editor on their computers. Refer to overhead projector as necessary.

Have the students look at the editor on their computers. Refer to overhead projector as necessary. Intro to Programming (Time 15 minutes) Open the programming tool of your choice: If you ve installed, DrRacket, double-click the application to launch it. If you are using the online-tool, click here to

More information