Lab 2: Booleans, Strings, Random Numbers, Recursion, Variables, Input function

Size: px
Start display at page:

Download "Lab 2: Booleans, Strings, Random Numbers, Recursion, Variables, Input function"

Transcription

1 Lab 2: Booleans, Strings, Random Numbers, Recursion, Variables, Input function Due: Mar25 (Note that this is a 2-week lab) This lab must be done using paired partners. You should choose a different partner than the partner you worked with previously. One student should turn in the lab, but the lab must have both students names on it. If you want to be really considerate, the other partner should type into the text box in Sakai the name of the partner they worked with, just to be safe. Create a file called lab2.py. Include as comments at the very top of the file: your name, your partner s name, class time, TA s name(s), and lab due date. Then include the following comments and functions: Note: Include the comments in your lab2.py file. This will make the lab easier to read and grade. You should still get into the habit of commenting every function. Comments should include the number and type of the input parameters, the type of the output parameter, and a clear description of exactly what the function does. When possible, the function should include test cases. Comments should be written BEFORE the function is written. Note 2: Test cases for functions that generate random numbers are somewhat difficult. If possible for those cases, give a sample output, i.e., an example of what you might get if a particular random number or set of random numbers are generated. Note that the rest of your comments don t change at all. All functions must have comments. In functions where I have included the comments, copy and paste them into your lab code. Lab Attendance Mar 12: 3 pts Lab Attendance Mar 19: 3 pts 1. (3 pts) Write a function that takes as input parameters 2 strings. It outputs a string. The returned string is the two input strings concatenated together. 2. (3 pts) Write a function that takes as input 2 parameters: a string and an int. It should return 1 longer string the string you input int times. So if your input parameters were ha and 4, the string returned should be hahahaha Problem 3a (3pts). Write the following functions based on the comments, below: # Function name: min2 # Input: 2 integers # Output: an integer # This function returns the smaller of the two input parameters # Test Cases: 3,7->min2->3 # 7,2->min2->2 # 3,3->min2->3 Problem 3b (3 pts). #Function name: min5

2 #Input: 5 integers #Output: 1 integer # This function should take 5 integers and return the minimum of those 5 integers. This function should be 1 line of code long #Test cases: 12,5,2,6,8 -> min5 -> 2 # 1,2,3,4,5-> min5 ->1 # 5,4,3,2,1->min5->1 3c (2 pts). Run min5 with strings as input parameters instead of integers. Example: # Text Cases: dog, bird, cat, zebra, bear -> min5 -> bear # aardvark, bear, echidna, wombat, zebra ->min5-> aardvark # zebra, wombat, echidna, bear, aardvark ->min5-> aardvark What did you just learn about the less than operator and strings? (Write a small comment answering that right below these test cases). 3d. (2 pts) Run min5 with the following two sets of input parameters: # Text Cases: 50,3800,490,6, > min5 ->? 50, 3800, 490, 6, > min5 ->? Do you get different results? Explain why you got the results you did (Hint: think of the dictionary). While Loops: Random Number Generation Python can generate random numbers. The library dedicated to generating random numbers is called random. So if you want to generate random numbers, you must first import the random number library by placing at the top of your lab2.py file: from random import * The above line should be the top line (under your comments) in your lab2.py file. Now, to generate a random number between 0 and 100 (not including 100) and store it in the variable randvar, you d write the following: randvar = randrange(0,100) Remember, we do the right side first and place the value calculated by the right side into the variable on the left side. So if you use the above code to generate a random number, randrange will generate a number between 0 and 99 (inclusive). Let s say the random number generated is 42. Then randvar will hold the number 42. To see what number is generated, you can always print it: print (randvar) (Note: when writing test cases for functions that use random numbers, you may need to give a range of answers that would be correct. So in this case, I might say: Input: 3->func-> 0 2 (inclusive) Input: 7-> func->0 6 (inclusive) Input: 100->func-> 0 99 (inclusive) NOTE: For those of you who have had programming before, this lab is to ensure sure you understand while loops. You must use while loops as opposed to any other type of loop for these problems. There should be no loops other than while loops in this lab. Problem 9a (2pts): Write a function that takes as an input parameter an integer. Inside the function, it should loop that many times (the value of the input parameter). There should be a total variable, initialized to 0. The loop

3 should generate a random number between 0 and 10 (not including 10, and add it to the total each time, and, when the loop is done, that total should be returned. Note that in order to check whether the function is working, inside the loop you ll have to print the random number each time. 9b (2 pts) Create a second version of this function that, instead of returning the total, returns the average random number generated. 9c (3 pts) Create a third version of this function that takes a second input parameter that is an integer between 0 and 10. This function counts how many of the random numbers are evenly divisible by the second input parameter and the function returns that count. Problem 10 (3 pts) Write a function that has no input parameters. It asks the user to enter a number between 0 and 100. It also has a count variable. It uses a while loop to generate random numbers. It continues to generate random numbers as long as the random number isn t the same as the number the user entered. It keeps count of the number of random numbers generated. When the random number generated is the same as the user-input number, it stops looping and returns a count of the number of wrong random numbers. Problem 11 (4 pts)in class on the powerpoints, we wrote the following function: def f(): x = int(input("heads or tails? (1 or 0) ")) y = randrange(0,2) if x == y: return("you guessed right! You both guessed " + str(x)) else: print(f()) return("you re wrong. You guessed "+str(x)+" and computer generated "+str(y)) As it is written now, you must call the function each time to make it happen. So, in other words, each time you want to guess Heads or Tails, you ve got to re-run the code. Modify the above code so that: a. Instead of returning You guessed right! You both guessed + str(x)) or You re wrong. You guessed +str(x)+ and the computer generated +str(y)) the function prints those sentences b. The function takes an input parameter, which will be the number of times the while loop loops. c. A loop is placed around the code so that the game is played the input parameter number of times. d. A count variable is added that counts the number of times the user guesses correctly. e. The count is what is returned from the function Problem 12 (5 pts)simple dice game. Sample output: This function (Dice) takes one integer as an input parameter, initialized to 0. It is what will be returned from the function when you re done adding up the values. The output type is also an integer Calculation: This function generates two random numbers between 1 and 6 inclusive. It then calculates your current score as follows: If you roll a 1, your score is set to 0 unless you roll 2 1 s, in which case you add 50 pts to your score. If you roll a 2 add 10 points to your score. If you roll two 3s, you lose 40 points. Otherwise, your score goes up by the addition of the two random numbers. This function will loop either 10 times. It returns the score. (Note: print out the random numbers generated within the function or you won t know whether your function is working or not)

4 4, 4 5, 1 6, 3 3, 4 3, 6 3, 3 5, 3 4, 2 5, 4 6, , 2 2, 5 2, 2 5, 6 4, 5 1, 5 2, 5 1, 1 1, 3 6, , 6 4, 2 5, 1 2, 2 5, 4 3, 4 3, 2 1, 2 4, 2 4, 5 19 Problem 13 13a. (4 pts) Write a function that takes as input parameters two integers. It returns an integer. It loops. Each time it generates a random number between 1 and the second parameter. If the random number is not equal to the first parameter, the random number is returned. Otherwise, the function loops. (Note: the way to test this function is to put print statements within the function showing the random number generated. You may wish to test this with a very small range in order to make sure that it actually continues to loop when the random number is equal to the first input parameter). So, for instance, I tested this with inputs of 2, and 3. This is the output I got: x is 2, rand num is 2 x is 2, rand num is 1 1 x is 2, rand num is 2 x is 2, rand num is 2

5 x is 2, rand num is 1 1 x is 2, rand num is 2 x is 2, rand num is 2 x is 2, rand num is b. (2 pts) (Not a loop): Write a function that takes as input parameters 4 integers. It returns a Boolean value. It checks to see if the second two parameters are the same as the first two parameters, regardless of order. In other words: 3,7,3,7 ->checkvalues ->True 7,4,4,7->checkvalues -> True 7,8,7,4->checkvalues -> False 13c. (5 pts) We ve all heard that the lottery is a tax on people who are bad in math. You re going to write a function that tests a simple version of this. For this lottery, you choose only 2 numbers within a range (I think the lottery s range is from 1-40, but I could be wrong on that). The function you are going to write should take 3 input values: the two integers you ve chosen, and the possible range of values (for testing, something smaller than 40, but for the actual lottery it would be 40),. The function should have a loop counter variable, initialized to 0. This is what is returned from the function because it counts how many times it took until you won the lottery. The function will generate 2 different random numbers (to make sure of this, you should use function 13a), then continue to loop until the 2 random numbers are the same as the 2 numbers you chose (your 2 input parameters)(this is checked using function in 13b), counting how many times you re looping using the loop counter. The loop stops when your input parameters and the random numbers are the same, and then the number of times the function had to loop before your input parameters and the random numbers were the same is returned. In other words, it returns how many times you d have to play with those two numbers before you won. Note a. You may always put print statements within your functions to see what they are doing as you run them. Note b: to test your function, you can change the lottery s range to a smaller number than 40. For instance, when I made the range 10 it looped 297 times before I won. When I made t 40, it looped 1427 times before I won. Note c: I m not including output for this one. It s too long. Problem 14: Input function (Versus input parameters) Python s input function is DIFFERENT from input parameters. Input parameters are the values that are passed into a function. The input function is a function that demands that the user type something in. So, for instance, def f(x,y): #x and y are the input parameters, and we put values into x and y outside of the function return(x + y) print(f(3,7) #this is putting values into the parameters. It s where we put 3 into x and 7 into y

6 Whereas: def f(): x = input( what value, as a number, do you want to enter? ) #Here the string shows up in python s shell #window, and the user must type in a value. #The value will go into x y = input( Enter a second number ) return(x+y) print(f()) #Notice that no values are going in here. In the second function, there are no input parameters. Instead, the function interacts with the user as it runs to get actual values for x and y. 14a. (3 pts) This (nonlooping) function takes 2 integers as input parameters, asks the user what x times y is using the input function for user input, and then returns True if the user inputs the correct value, and false otherwise as follows: #Function name: mult #input parameters: 2 integers #output: a Boolean value #This function checks whether the value the user types in using the input function is equal to the product of the two input parameters and returns True if it is, False otherwise. #Test cases: Input parameter: 3, 7>mult2-> value entered into input function: 21- ->True # Input parameter: 6,4->mult2-> value entered into input function: 18->False # Input parameter: 0-,12>mult2-> value entered into input function: 0->True 14b. (4 pts) Function name: MultTest Input parameters: 2 integers Output: A string This function uses a while loop and the function written in problem 2 (mult) to see how well a student is able to do their multiplication tables. The function checks to see whether a student is able to correctly multiply every number between 2 and 12 with the first input parameter. If the student gets any answer incorrect, the function starts over with 2 times x, then 3 times x, then 4 times x, etc, where x is the first input parameter. Otherwise, the function returns a string saying, Congratulations! You know your x multiplication tables! Test Output (i.e., what you might see): What is 4 times 2? -> 8 What is 4 times 3? -> 12 What is 4 times 4? -> 16 What is 4 times 5? -> 20 What is 4 times 6? -> 24 What is 4 times 7? -> 28 What is 4 times 8? -> 32 What is 4 times 9? -> 36 What is 4 times 10? -> 40 What is 4 times 11? -> 44 What is 4 times 12? -> 48

7 Problem 15: Contratulations! You know your 4 multiplication tables! What is 6 times 2? -> 12 What is 6 times 3? -> 18 What is 6 times 4? -> 24 What is 6 times 5? -> 30 What is 6 times 6? -> 34 What is 6 times 2? -> 12 What is 6 times 3? -> 18 What is 6 times 4? -> 24 What is 6 times 5? -> 30 What is 6 times 6? -> 36 What is 6 times 7? -> 42 What is 6 times 8? -> 48 What is 6 times 9? -> 54 What is 6 times 10? -> 60 What is 6 times 11? -> 66 What is 6 times 12? -> 72 Contratulations! You know your 6 multiplication tables! 15a.(4 pts) Create a copy of your dice function that stops either when the loop hits 10, or when the user chooses to stop. That means that every time, it should use the user input function to ask the user, Do you wish to continue? If the user says yes, the function continues as before. If no, the current score is returned. Note: this function may take no input parameters, depending on how you write it. Example: 1, 2 4, 1 3, 3 tot so far:-40 5, 4 tot so far:-31 1, 6 6, 3 tot so far:9 1, 4 2, 6 tot so far:10

8 3, 1 2, 1 0 Example 2: 3, 5 tot so far:8 3, 2 tot so far:18 Do you wish to continue?no 18 15b: (6 pts) Now create a brand new function called dicegame. This function takes 3 integers as its input parameters:, the score of the first player, the score of the second player, and the count of the number of loops. It then loops the count time. Each loop, it calls the first dice function and adds the score to the first player s score, and then it calls the second dice function (above) and the user plays the game. Each time the loop should print out the first player s current score and the second player s current score. When it is done looping, it should say whether the first player or the second player won. Example if the call is dicegame(0,0,2): 1, 3 4, 4 tot so far:8 4, 4 tot so far:16 2, 2 tot so far:26 4, 4 tot so far:34 2, 4 tot so far:44 2, 3 tot so far:54 3, 5 tot so far:62 3, 5 tot so far:70

9 4, 4 tot so far:78 switching players 1, 6 6, 6 tot so far:12 5, 3 tot so far:20 3, 5 tot so far:28 2, 1 5, 6 tot so far:11 6, 4 tot so far:21 1, 6 2, 5 tot so far:10 2, 4 tot so far:20 score 1:78, score2:20 4, 4 tot so far:86 Do you wish to continue?no switching players 2, 2 tot so far:30 4, 4 tot so far:38 4, 1 5, 4 tot so far:9 2, 2 tot so far:19 5, 4

10 tot so far:28 4, 5 tot so far:37 6, 5 tot so far:48 4, 6 tot so far:58 4, 2 tot so far:68 score 1:86, score2:68 player 1 won! 86 versus 68 Turtle: Problem T1 ( 3 pts) Function Name: Circles Input: 1 integer: the radius Output: none This function loops until the radius is 0 or less. Each time it draws a circle with the radius, and then loops with a radius 3 smaller than the previous radius. You should get something like this: Problem T2: (4 pts) Function Name: Squares Input: 3 integers: the length of the side, and the starting x and y coordinate Output: none This function loops until the length of the side is 0 or less. Each time it draws a square centered within the previous square, and then loops with a radius 8 smaller than the previous side length. You should get something like this: Note: for this you will need turtle.penup() to lift the turtle pen off the screen, then, of course, turtle.pendown() to put it down on the screen, and you ll need turtle.goto(x,y) which will move the pen to the x y coordinates.

11 Problem T3: Spirograph/flower To do this problem, you need to know a few things about turtle s color. Color is represented by the amount of red, the amount of green, and the amount of blue (rgb values). Each value is represented by an amount between 0 and 1. To set the color, you use the command: turtle.color(r,g,b) where r is a double between 0 and 1, g is a double between 0 and 1, and b is a double between 0 and 1. You can set turtle s pensize with an int, e.g., turtle.pensize(3) equally, when the pen is at x,y coordinates and a circle is drawn, the x y coordinates default to the very bottom of the circle s circumference, not the center. In order to have the circle drawn with the starting location at the same x/y coordinates but at a different angle, you rotate the direction of the turtle using either turtle.left() or turtle.right(), and the degrees you want to rotate turtle s angle. So for instance, if you wanted to draw 6 circles like a Spirograph, you d rotate turtle.left(60) each time and then draw another circle. Okay, now onto the drawcircles function: T3a (4 pts) drawcircles: This function draws one set of Spirograph circles. It takes 6 (yep, 6!) input parameters: one int representing the count, or number of times the loop still needs to rotate, an int representing the size of the circle, an int representing the amount the turtle should be rotated each time, and then 3 doubles, all between 0 and 1, representing the amount of red, the amount of green, and the amount of blue in the color, respectively. The function should return nothing, using: return It should generate a random number between -.2 and.2 (random number between -20 and 20, divided by 100). And that number should be added to the amount of red. Repeat for green, and for blue. Then check to make sure that the red, green, and blue amounts are within range. If a value is < 0, it should be reset to.1. If it s > 1, it should be reset to.9. The turtle s color should be set to the new red/green/blue values. And a circle should be drawn. Then the loop should continue. So, if the drawcircle is called initially as: Drawcircle(6,25,60,.5,.5,.5) You should get something looking like this:

12 T3b (7 pts) Spirograph function: This function takes 3 parameters, all three are ints. The first is the count of the number of circle sets you ll create (the drawcircle function creates 1 circle set), and the second and third are the x/y coordinates of where the circles start from. (Note: these don t change throughout, but this function makes sure that we always start from those x/y coordinates in case the pen gets off by a pixel or two). This function loops count times (the first parameter). If it does not stop, it goes to the x/y coordinate. Note: you will want to use the following command: turtle.setheading(0) to reset the direction of the turtle to its original direction You will then randomly choose a number between 4 and 20 for how many circles should be generated for this circle set. Once you know the number of circles, you should calculate how much the rotation should be. Finally, you should randomly generate a number between 20 and 230, which will be the size of each circle. When you have that, you should call your drawcircle function (with initial color values of.5,.5,..5). Then you should loop with the Spirograph function. You might get something that looks like this:

13 Problem T4(5 pts) In problem 4.2 under the turtle section in the last lab, you wrote a function that took as an input parameter a color, and drew an object. For this problem, you are going to use that function to draw your object all over the turtle window, in different colors. So the function you are now writing, which will loop, should have 1 parameter: the total number of times the loop needs to loop. In the function, you will generate a random number between and 250 for the x coordinate, and another random number between -250 and 250 for the y coordinate. You should then use turtle.penup() and turtle.goto(x,y) to have the pen go to the new x and y coordinate. Then call the function you wrote in 4.2 (you should copy and paste that function into this lab file, above this function you are writing now). Make sure you generate new random numbers for the color. Problem T5 (10 pts) Rock/Paper/Scissors Copy the following code into Lab 2. Make sure you ve downloaded stone.gif, paper.gif, and Scissors.gif from my web page. Place them in your Python folder on your computer. Then write the following function where indicated.

14 import turtle import tkinter from random import * tk = tkinter.tk() canvas = tkinter.canvas(tk, width = 500, height = 300, bg="white", bd="5") canvas.pack() def display(you,computer): print("you: " + str(you) + " computer: " + str(computer)) if you == 0: my_img=tkinter.photoimage(file = "stone.gif") elif you == 1: my_img=tkinter.photoimage(file = "paper.gif") elif you == 2: my_img=tkinter.photoimage(file = "Scissors.gif") canvas.create_image(70,60, anchor = tkinter.nw,image = my_img) if computer == 0: c_img=tkinter.photoimage(file = "stone.gif") elif computer == 1: c_img=tkinter.photoimage(file = "paper.gif") elif computer == 2: c_img=tkinter.photoimage(file = "Scissors.gif") canvas.create_image(270,60, anchor = tkinter.nw,image = c_img) tk.update() # function: # Function name: RockPaperScissors # input: 1 integer the number of times the loop should loop # output: a string You won w out of x times, where w is the count of the number of times you won, and x is the number of times the loop looped. # This function should run x times (where x is the input parameter). Each time it should use the input function to ask you, choose 0 for rock,1 for paper, or 2 for scissors:. It should then generate a random number between 0 and 3 (not including 3). It should call the function display() with your choice and the computer s choice. It should then calculate whether you won and, if so, increase the won (w) count. The winner is determined as follows: If the user chose rock: If the computer generated rock, it s a tie If the computer generated paper, the user loses If the computer generated scissors, the user wins If the user chose paper: If the computer generated rock, the user wins If the computer generated paper, it s a tie If the computer generated scissors, the user loses If the user chose scissors: If the computer generated rock, the user loses If the computer generated paper, the user wins If the computer generated scissors, it s a tie Again, this function should loop x times where x is the input parameter

15 #YOUR FUNCTION GOES HERE! def main(): print(rockpaperscissors(0,0)) main()

Lab 2: Booleans, Strings, Random Numbers, Recursion, Variables, Input function

Lab 2: Booleans, Strings, Random Numbers, Recursion, Variables, Input function Lab 2: Booleans, Strings, Random Numbers, Recursion, Variables, Input function Due: Mar13 (Note that this is a 2-week lab) This lab must be done using paired partners. You should choose a different partner

More information

Problem 1.1 (3 pts) :Python uses atomic data types and builds up from there. Give an example of: a. an int b. a double c. a string

Problem 1.1 (3 pts) :Python uses atomic data types and builds up from there. Give an example of: a. an int b. a double c. a string Lab 1: Due Sunday, Feb 28, midnight This is a paired programming lab: In this lab you will work in pairs. In lab, you will choose your partner for the next two weeks. Get your partner s name and email

More information

CONDITION CONTROLLED LOOPS. Introduction to Programming - Python

CONDITION CONTROLLED LOOPS. Introduction to Programming - Python CONDITION CONTROLLED LOOPS Introduction to Programming - Python Generating Random Numbers Generating a random integer Sometimes you need your program to generate information that isn t available when you

More information

Programming Lab 1 (JS Hwk 3) Due Thursday, April 28

Programming Lab 1 (JS Hwk 3) Due Thursday, April 28 Programming Lab 1 (JS Hwk 3) Due Thursday, April 28 Lab You may work with partners for these problems. Make sure you put BOTH names on the problems. Create a folder named JSLab3, and place all of the web

More information

CMSC 201 Fall 2016 Lab 09 Advanced Debugging

CMSC 201 Fall 2016 Lab 09 Advanced Debugging CMSC 201 Fall 2016 Lab 09 Advanced Debugging Assignment: Lab 09 Advanced Debugging Due Date: During discussion Value: 10 points Part 1: Introduction to Errors Throughout this semester, we have been working

More information

Lab 4: Strings/While Loops Due Sun, Apr 17 at midnight

Lab 4: Strings/While Loops Due Sun, Apr 17 at midnight Lab 4: Strings/While Loops Due Sun, Apr 17 at midnight For this lab, you must work with a partner. You should choose a new partner. Remember to turn in your peer review. All functions should be commented

More information

Lab 4: Strings/Loops Due Apr 22 at midnight

Lab 4: Strings/Loops Due Apr 22 at midnight Lab 4: Strings/Loops Due Apr 22 at midnight For this lab, you must work with a partner. All functions should be commented appropriately. If there are random numbers, the function must still be commen ted

More information

Introduction to Computer Science Unit 3. Programs

Introduction to Computer Science Unit 3. Programs Introduction to Computer Science Unit 3. Programs This section must be updated to work with repl.it Programs 1 to 4 require you to use the mod, %, operator. 1. Let the user enter an integer. Your program

More information

Here is a sample IDLE window illustrating the use of these two functions:

Here is a sample IDLE window illustrating the use of these two functions: 1 A SLIGHT DETOUR: RANDOM WALKS One way you can do interesting things with a program is to introduce some randomness into the mix. Python, and most programming languages, typically provide a library for

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

(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

Lab 4: Due Sunday, Nov 22

Lab 4: Due Sunday, Nov 22 Lab 4: Due Sunday, Nov 22 Part 1(15 pts): Finish the class project so that it works. For this, you can continue to work with your group, but everyone should turn it in individually. Turn this in separately

More information

: Intro Programming for Scientists and Engineers Assignment 1: Turtle Graphics

: Intro Programming for Scientists and Engineers Assignment 1: Turtle Graphics Assignment 1: Turtle Graphics Page 1 600.112: Intro Programming for Scientists and Engineers Assignment 1: Turtle Graphics Peter H. Fröhlich phf@cs.jhu.edu Joanne Selinski joanne@cs.jhu.edu Due Date: Wednesdays

More information

Decisions, Decisions. Testing, testing C H A P T E R 7

Decisions, Decisions. Testing, testing C H A P T E R 7 C H A P T E R 7 In the first few chapters, we saw some of the basic building blocks of a program. We can now make a program with input, processing, and output. We can even make our input and output a little

More information

Introduction to Computer Science Unit 4B. Programs: Classes and Objects

Introduction to Computer Science Unit 4B. Programs: Classes and Objects Introduction to Computer Science Unit 4B. Programs: Classes and Objects This section must be updated to work with repl.it 1. Copy the Box class and compile it. But you won t be able to run it because it

More information

15-110: Principles of Computing, Spring 2018

15-110: Principles of Computing, Spring 2018 5-: Principles of Computing, Spring 28 Problem Set 8 (PS8) Due: Friday, March 3 by 2:3PM via Gradescope Hand-in HANDIN INSTRUCTIONS Download a copy of this PDF file. You have two ways to fill in your answers:.

More information

How To Think Like A Computer Scientist, chapter 3; chapter 6, sections

How To Think Like A Computer Scientist, chapter 3; chapter 6, sections 6.189 Day 3 Today there are no written exercises. Turn in your code tomorrow, stapled together, with your name and the file name in comments at the top as detailed in the Day 1 exercises. Readings How

More information

Hello World! Computer Programming for Kids and Other Beginners. Chapter 1. by Warren Sande and Carter Sande. Copyright 2009 Manning Publications

Hello World! Computer Programming for Kids and Other Beginners. Chapter 1. by Warren Sande and Carter Sande. Copyright 2009 Manning Publications Hello World! Computer Programming for Kids and Other Beginners by Warren Sande and Carter Sande Chapter 1 Copyright 2009 Manning Publications brief contents Preface xiii Acknowledgments xix About this

More information

JS Lab 1: (Due Thurs, April 27)

JS Lab 1: (Due Thurs, April 27) JS Lab 1: (Due Thurs, April 27) For this lab, you may work with a partner, or you may work alone. If you choose a partner, this will be your partner for the final project. If you choose to do it with a

More information

The Beauty and Joy of Computing 1 Lab Exercise 9: Problem self-similarity and recursion - Python version

The Beauty and Joy of Computing 1 Lab Exercise 9: Problem self-similarity and recursion - Python version The Beauty and Joy of Computing 1 Lab Exercise 9: Problem self-similarity and recursion - Python version Objectives By completing this lab exercise, you should learn to Recognize simple self-similar problems

More information

6.S189 Homework 1. What to turn in. Exercise 1.1 Installing Python. Exercise 1.2 Hello, world!

6.S189 Homework 1. What to turn in. Exercise 1.1 Installing Python. Exercise 1.2 Hello, world! 6.S189 Homework 1 http://web.mit.edu/6.189/www/materials.html What to turn in Do the warm-up problems for Days 1 & 2 on the online tutor. Complete the problems below on your computer and get a checkoff

More information

CpSc 1111 Lab 6 Conditional Statements, Loops, the Math Library, and Random Numbers What s the Point?

CpSc 1111 Lab 6 Conditional Statements, Loops, the Math Library, and Random Numbers What s the Point? CpSc 1111 Lab 6 Conditional Statements, Loops, the Math Library, and Random Numbers What s the Point? Overview For this lab, you will use: one or more of the conditional statements explained below scanf()

More information

Outline. Announcements. Homework 2. Boolean expressions 10/12/2007. Announcements Homework 2 questions. Boolean expression

Outline. Announcements. Homework 2. Boolean expressions 10/12/2007. Announcements Homework 2 questions. Boolean expression Outline ECS 10 10/8 Announcements Homework 2 questions Boolean expressions If/else statements State variables and avoiding sys.exit( ) Example: Coin flipping (if time permits) Announcements Professor Amenta

More information

Condition Controlled Loops. Introduction to Programming - Python

Condition Controlled Loops. Introduction to Programming - Python Condition Controlled Loops Introduction to Programming - Python Decision Structures Review Programming Challenge: Review Ask the user for a number from 1 to 7. Tell the user which day of the week was selected!

More information

Programming with Python

Programming with Python Programming with Python Dr Ben Dudson Department of Physics, University of York 21st January 2011 http://www-users.york.ac.uk/ bd512/teaching.shtml Dr Ben Dudson Introduction to Programming - Lecture 2

More information

CS 051 Homework Laboratory #2

CS 051 Homework Laboratory #2 CS 051 Homework Laboratory #2 Dirty Laundry Objective: To gain experience using conditionals. The Scenario. One thing many students have to figure out for the first time when they come to college is how

More information

Lab 4 Due April 18 th

Lab 4 Due April 18 th Lab 4 Due April 18 th (100 pts) You may work with a partner if you want. Turn in one version with 2 names on it. Do not forget your partner s name. Or work alone. Your choice. Problem 1 (10 pts): Create

More information

What you get When you install Python for your computer, you get a number of features:

What you get When you install Python for your computer, you get a number of features: Lab 1 CS161 Exercise 1: In the beginning Why Python? Python is a programming language that was first conceived by Guido van Rossum in the late 1980 s and in 1990. While there are a number of programming

More information

Honors Computer Science Python Mr. Clausen Programs 4A, 4B, 4C, 4D, 4E, 4F

Honors Computer Science Python Mr. Clausen Programs 4A, 4B, 4C, 4D, 4E, 4F PROGRAM 4A Full Names (25 points) Honors Computer Science Python Mr. Clausen Programs 4A, 4B, 4C, 4D, 4E, 4F This program should ask the user for their full name: first name, a space, middle name, a space,

More information

CIS220 In Class/Lab 1: Due Sunday night at midnight. Submit all files through Canvas (25 pts)

CIS220 In Class/Lab 1: Due Sunday night at midnight. Submit all files through Canvas (25 pts) CIS220 In Class/Lab 1: Due Sunday night at midnight. Submit all files through Canvas (25 pts) Problem 0: Install Eclipse + CDT (or, as an alternative, Netbeans). Follow the instructions on my web site.

More information

Programming Project 1

Programming Project 1 Programming Project 1 Handout 6 CSCI 134: Fall, 2016 Guidelines A programming project is a laboratory that you complete on your own, without the help of others. It is a form of take-home exam. You may

More information

6.S189 Homework 2. What to turn in. Exercise 3.1 Defining A Function. Exercise 3.2 Math Module.

6.S189 Homework 2. What to turn in. Exercise 3.1 Defining A Function. Exercise 3.2 Math Module. 6.S189 Homework 2 http://web.mit.edu/6.s189/www/materials.html What to turn in Checkoffs 3, 4 and 5 are due by 5 PM on Monday, January 15th. Checkoff 3 is over Exercises 3.1-3.2, Checkoff 4 is over Exercises

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

[ the academy_of_code] Senior Beginners

[ the academy_of_code] Senior Beginners [ the academy_of_code] Senior Beginners 1 Drawing Circles First step open Processing Open Processing by clicking on the Processing icon (that s the white P on the blue background your teacher will tell

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

Using IDLE for

Using IDLE for Using IDLE for 15-110 Step 1: Installing Python Download and install Python using the Resources page of the 15-110 website. Be sure to install version 3.3.2 and the correct version depending on whether

More information

15-110: Principles of Computing, Spring 2018

15-110: Principles of Computing, Spring 2018 15-110: Principles of Computing, Spring 2018 Programming Assignment 11 (PA11) Due: Tuesday, May 1 by 9PM IMPORTANT ANNOUNCEMENT You cant drop this assignment even if it is your lowest PA score. Failure

More information

Honors Computer Science Python Mr. Clausen Program 7A, 7B

Honors Computer Science Python Mr. Clausen Program 7A, 7B Honors Computer Science Python Mr. Clausen Program 7A, 7B PROGRAM 7A Turtle Graphics Animation (100 points) Here is the overview of the program. Use functions to draw a minimum of two background scenes.

More information

4. 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?

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

CMSC 201 Spring 2017 Homework 4 Lists (and Loops and Strings)

CMSC 201 Spring 2017 Homework 4 Lists (and Loops and Strings) CMSC 201 Spring 2017 Homework 4 Lists (and Loops and Strings) Assignment: Homework 4 Lists (and Loops and Strings) Due Date: Friday, March 3rd, 2017 by 8:59:59 PM Value: 40 points Collaboration: For Homework

More information

Midterm Exam 2B Answer key

Midterm Exam 2B Answer key Midterm Exam 2B Answer key 15110 Principles of Computing Fall 2015 April 6, 2015 Name: Andrew ID: Lab section: Instructions Answer each question neatly in the space provided. There are 6 questions totaling

More information

Animations involving numbers

Animations involving numbers 136 Chapter 8 Animations involving numbers 8.1 Model and view The examples of Chapter 6 all compute the next picture in the animation from the previous picture. This turns out to be a rather restrictive

More information

CPSC 217 Assignment 3

CPSC 217 Assignment 3 CPSC 217 Assignment 3 Due: Monday November 23, 2015 at 12:00 noon Weight: 7% Sample Solution Length: 135 lines, including some comments (not including the provided code) Individual Work: All assignments

More information

CISC 181 Lab 2 (100 pts) Due: March 4 at midnight (This is a two-week lab)

CISC 181 Lab 2 (100 pts) Due: March 4 at midnight (This is a two-week lab) CISC 181 Lab 2 (100 pts) Due: March 4 at midnight (This is a two-week lab) This lab should be done individually. Labs are to be turned in via Sakai by midnight on Tuesday, March 4 (the midnight between

More information

CS 115 Lecture 8. Selection: the if statement. Neil Moore

CS 115 Lecture 8. Selection: the if statement. Neil Moore CS 115 Lecture 8 Selection: the if statement Neil Moore Department of Computer Science University of Kentucky Lexington, Kentucky 40506 neil@cs.uky.edu 24 September 2015 Selection Sometime we want to execute

More information

CS1110 Lab 6 (Mar 17-18, 2015)

CS1110 Lab 6 (Mar 17-18, 2015) CS1110 Lab 6 (Mar 17-18, 2015) First Name: Last Name: NetID: The lab assignments are very important and you must have a CS 1110 course consultant tell CMS that you did the work. (Correctness does not matter.)

More information

Midterm #1 Fall minutes

Midterm #1 Fall minutes 15-112 Midterm #1 Fall 2014 80 minutes Name: Andrew ID: @andrew.cmu.edu Section: INSTRUCTIONS You may not use any books, notes, or electronic devices during this exam. You may not ask questions about the

More information

Introduction to Programming with JES

Introduction to Programming with JES Introduction to Programming with JES Titus Winters & Josef Spjut October 6, 2005 1 Introduction First off, welcome to UCR, and congratulations on becoming a Computer Engineering major. Excellent choice.

More information

Invent Your Own Computer Games with Python

Invent Your Own Computer Games with Python Dragon Realm Invent Your Own Computer Games with Python Heejin Park College of Information and Communications Hanyang University Introduction Dragon Realm Sample Run Source Code Code Explanation def statements

More information

The little book of programming challenges

The little book of programming challenges 24 The little book of programming challenges The following challenges are here to challenge and inspire you as well as help you on your journey to becoming a computational thinker. You may be set these

More information

Due Date: Two Program Demonstrations (Testing and Debugging): End of Lab

Due Date: Two Program Demonstrations (Testing and Debugging): End of Lab CSC 111 Fall 2005 Lab 6: Methods and Debugging Due Date: Two Program Demonstrations (Testing and Debugging): End of Lab Documented GameMethods file and Corrected HighLow game: Uploaded by midnight of lab

More information

CS 150 Lab 10 Functions and Random Numbers

CS 150 Lab 10 Functions and Random Numbers CS 150 Lab 10 Functions and Random Numbers The objective of today s lab is to implement functions and random numbers in a simple game. Be sure your output looks exactly like the specified output. Be sure

More information

mith College Computer Science Lecture Notes CSC111 Week 7 Spring 2018 Dominique Thiébaut

mith College Computer Science Lecture Notes CSC111 Week 7 Spring 2018 Dominique Thiébaut mith College Computer Science Lecture Notes Week 7 Spring 2018 CSC111 Dominique Thiébaut dthiebaut@smith.edu Midterm Grades available later today (3/19/18) Outline A Second Look at Files Reading Files

More information

cs1114 REVIEW of details test closed laptop period

cs1114 REVIEW of details test closed laptop period python details DOES NOT COVER FUNCTIONS!!! This is a sample of some of the things that you are responsible for do not believe that if you know only the things on this test that they will get an A on any

More information

CS 142 Style Guide Grading and Details

CS 142 Style Guide Grading and Details CS 142 Style Guide Grading and Details In the English language, there are many different ways to convey a message or idea: some ways are acceptable, whereas others are not. Similarly, there are acceptable

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

Introduction to Java Programs for Packet #4: Classes and Objects

Introduction to Java Programs for Packet #4: Classes and Objects Introduction to Java Programs for Packet #4: Classes and Objects Note. All of these programs involve writing and using more than one class file. 1. Copy the Box class and compile it. But you won t be able

More information

CMPSCI 119 LAB #2 Anime Eyes Professor William T. Verts

CMPSCI 119 LAB #2 Anime Eyes Professor William T. Verts CMPSCI 119 LAB #2 Anime Eyes Professor William T. Verts The goal of this Python programming assignment is to write your own code inside a provided program framework, with some new graphical and mathematical

More information

Software Development Pseudocode

Software Development Pseudocode Software Development Pseudocode Software Development: Pseudocode Task 1 Task 1 Students are graded out of 10 for assignments. A+ 10 A 9 B+ 8 B 7 C+ 6 C 5 D+ 4 D 3 E+ 2 E 1 Fail 0 This is the current pseudocode

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

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

6.149 Checkoff 2. What to complete. Recall: Creating a file and running a program in IDLE.

6.149 Checkoff 2. What to complete. Recall: Creating a file and running a program in IDLE. 6.149 Checkoff 2 http://web.mit.edu/6.149/www/materials.html What to complete Due: Wednesday, January 14, 2015 @ 5 p.m. 1. checkoff2 user input.py, which will contain your code for 2.1 - User input 2.

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

CS 111X - Spring Final Exam - KEY

CS 111X - Spring Final Exam - KEY CS 111X - Spring 2016 - Final Exam 1/10 Computing ID: CS 111X - Spring 2016 - Final Exam - KEY Name: Computing ID: On my honor as a student, I have neither given nor received unauthorized assistance on

More information

CPSC 217 Midterm (Python 3 version)

CPSC 217 Midterm (Python 3 version) CPSC 217 Midterm (Python 3 version) Duration: 60 minutes 7 March 2011 This exam has 81 questions and 14 pages. This exam is closed book. No notes, books, calculators or electronic devices, or other assistance

More information

Noughts and Crosses. Step 1: Drawing the grid. Introduction

Noughts and Crosses. Step 1: Drawing the grid. Introduction 6 Noughts and Crosses These projects are for use inside the UK only. All Code Clubs must be registered. You can check registered clubs at www.codeclub.org.uk/. This coursework is developed in the open

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

Second Examination Solution

Second Examination Solution University of Illinois at Urbana-Champaign Department of Computer Science Second Examination Solution CS 225 Data Structures and Software Principles Fall 2007 7p-9p, Thursday, November 8 Name: NetID: Lab

More information

Structure and Interpretation of Computer Programs

Structure and Interpretation of Computer Programs CS 6A Fall 206 Structure and Interpretation of Computer Programs Final Solutions INSTRUCTIONS You have hours to complete the exam. The exam is closed book, closed notes, closed computer, closed calculator,

More information

Procedures: Algorithms and Abstraction

Procedures: Algorithms and Abstraction Procedures: Algorithms and Abstraction 5 5.1 Objectives After completing this module, a student should be able to: Read and understand simple NetLogo models. Make changes to NetLogo procedures and predict

More information

Notebook Assignments

Notebook Assignments Notebook Assignments These six assignments are a notebook using techniques from class in the single concrete context of graph theory. This is supplemental to your usual assignments, and is designed for

More information

CMSC201 Computer Science I for Majors

CMSC201 Computer Science I for Majors CMSC201 Computer Science I for Majors Lecture 08 Lists Constants Last Class We Covered More on while loops Sentinel loops Boolean flags 2 Any Questions from Last Time? 3 Today s Objectives To learn about

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

Othello Turtle Extra Credit (20 points) Due Sunday, Nov 29 (really!)

Othello Turtle Extra Credit (20 points) Due Sunday, Nov 29 (really!) Othello Turtle Extra Credit (20 points) Due Sunday, Nov 29 (really!) For the extra credit, you will add turtle to the Othello project you have done. It will require modifying some functions (slightly),

More information

AN INTRODUCTION TO SCRATCH (2) PROGRAMMING

AN INTRODUCTION TO SCRATCH (2) PROGRAMMING AN INTRODUCTION TO SCRATCH (2) PROGRAMMING Document Version 2 (04/10/2014) INTRODUCTION SCRATCH is a visual programming environment and language. It was launched by the MIT Media Lab in 2007 in an effort

More information

Fundamentals. Fundamentals. Fundamentals. We build up instructions from three types of materials

Fundamentals. Fundamentals. Fundamentals. We build up instructions from three types of materials Fundamentals We build up instructions from three types of materials Constants Expressions Fundamentals Constants are just that, they are values that don t change as our macros are executing Fundamentals

More information

Drawing a Circle. 78 Chapter 5. geometry.pyde. def setup(): size(600,600) def draw(): ellipse(200,100,20,20) Listing 5-1: Drawing a circle

Drawing a Circle. 78 Chapter 5. geometry.pyde. def setup(): size(600,600) def draw(): ellipse(200,100,20,20) Listing 5-1: Drawing a circle 5 Transforming Shapes with Geometry In the teahouse one day Nasrudin announced he was selling his house. When the other patrons asked him to describe it, he brought out a brick. It s just a collection

More information

CS 1301 Exam 1 Fall 2014

CS 1301 Exam 1 Fall 2014 CS 1301 Exam 1 Fall 2014 Name : Grading TA: Integrity: By taking this exam, you pledge that this is your work and you have neither given nor received inappropriate help during the taking of this exam in

More information

Part 1. Summary of For Loops and While Loops

Part 1. Summary of For Loops and While Loops NAME EET 2259 Lab 5 Loops OBJECTIVES -Understand when to use a For Loop and when to use a While Loop. -Write LabVIEW programs using each kind of loop. -Write LabVIEW programs with one loop inside another.

More information

CSC D84 Assignment 2 Game Trees and Mini-Max

CSC D84 Assignment 2 Game Trees and Mini-Max 0 The Cats Strike Back Due date: Wednesday, Feb. 21, 9am (electronic submission on Mathlab) This assignment can be completed individually, or by a team of 2 students This assignment is worth 10 units toward

More information

Boolean Expressions. Is Equal and Is Not Equal

Boolean Expressions. Is Equal and Is Not Equal 3 MAKING CHOICES Now that we ve covered how to create constants and variables, you re ready to learn how to tell your computer to make choices. This chapter is about controlling the flow of a computer

More information

University of California, Berkeley College of Engineering

University of California, Berkeley College of Engineering University of California, Berkeley College of Engineering Department of Electrical Engineering and Computer Sciences Spring 2012 Instructor: Dan Garcia 2012-03-22 Last Name First Name Student ID Number

More information

append() function, 66 appending, 65, 97, 296 applications (apps; programs), defined, 2, 296

append() function, 66 appending, 65, 97, 296 applications (apps; programs), defined, 2, 296 Index Note: Page numbers followed by f, n, or t indicate figures, notes, and tables, respectively. Symbols += (addition and assignment operator), 100, 187 + (addition operator), \ (backslash), 240 / (division

More information

CS 111X - Fall Test 1

CS 111X - Fall Test 1 CS 111X - Fall 2016 - Test 1 1/9 Computing ID: CS 111X - Fall 2016 - Test 1 Name: Computing ID: On my honor as a student, I have neither given nor received unauthorized assistance on this exam. Signature:

More information

Remaining Enhanced Labs

Remaining Enhanced Labs Here are some announcements regarding the end of the semester, and the specifications for the last Enhanced Labs. Don t forget that you need to take the Common Final Examination on Saturday, May 5, from

More information

5 R1 The one green in the same place so either of these could be green.

5 R1 The one green in the same place so either of these could be green. Page: 1 of 20 1 R1 Now. Maybe what we should do is write out the cases that work. We wrote out one of them really very clearly here. [R1 takes out some papers.] Right? You did the one here um where you

More information

Creating objects TOPIC 3 INTRODUCTION TO PROGRAMMING. Making things to program with.

Creating objects TOPIC 3 INTRODUCTION TO PROGRAMMING. Making things to program with. 1 Outline TOPIC 3 INTRODUCTION TO PROGRAMMING Notes adapted from Introduction to Computing and Programming with Java: A Multimedia Approach by M. Guzdial and B. Ericson, and instructor materials prepared

More information

CS1114 Spring 2015 Test ONE ANSWER KEY. page 1 of 8 pages (counting the cover sheet)

CS1114 Spring 2015 Test ONE ANSWER KEY. page 1 of 8 pages (counting the cover sheet) CS1114 Spring 2015 Test ONE ANSWER KEY page 1 of 8 pages (counting the cover sheet) For the following questions, use these variable definitions a = 36 b = 3 c = 12 d = '3' What is the type and value of

More information

Introduction to Python (All the Basic Stuff)

Introduction to Python (All the Basic Stuff) Introduction to Python (All the Basic Stuff) 1 Learning Objectives Python program development Command line, IDEs, file editing Language fundamentals Types & variables Expressions I/O Control flow Functions

More information

CS 1301 Exam 1 Fall 2010

CS 1301 Exam 1 Fall 2010 CS 1301 Exam 1 Fall 2010 Name : Grading TA: Integrity: By taking this exam, you pledge that this is your work and you have neither given nor received inappropriate help during the taking of this exam in

More information

CS 1301 Exam 1 Fall 2014

CS 1301 Exam 1 Fall 2014 CS 1301 Exam 1 Fall 2014 Name : Grading TA: Integrity: By taking this exam, you pledge that this is your work and you have neither given nor received inappropriate help during the taking of this exam in

More information

CSCE 110: Programming I

CSCE 110: Programming I CSCE 110: Programming I Sample Questions for Exam #1 February 17, 2013 Below are sample questions to help you prepare for Exam #1. Make sure you can solve all of these problems by hand. For most of the

More information

nostarch.com/pfk For bulk orders, please contact us at

nostarch.com/pfk For bulk orders, please contact us at nostarch.com/pfk For bulk orders, please contact us at sales@nostarch.com. Teacher: Date/Period: Subject: Python Programming Class: Topic: #1 - Getting Started Duration: Up to 50 min. Objectives: Install

More information

CS150 Sample Final. Name: Section: A / B

CS150 Sample Final. Name: Section: A / B CS150 Sample Final Name: Section: A / B Date: Start time: End time: Honor Code: Signature: This exam is closed book, closed notes, closed computer, closed calculator, etc. You may only use (1) the final

More information

Lab 4: Imperative & Debugging 12:00 PM, Feb 14, 2018

Lab 4: Imperative & Debugging 12:00 PM, Feb 14, 2018 CS18 Integrated Introduction to Computer Science Fisler, Nelson Lab 4: Imperative & Debugging 12:00 PM, Feb 14, 2018 Contents 1 Imperative Programming 1 1.1 Sky High Grades......................................

More information

Structure and Interpretation of Computer Programs

Structure and Interpretation of Computer Programs CS 61A Summer 2014 Structure and Interpretation of Computer Programs Final Solutions INSTRUCTIONS ˆ You have 3 hours to complete the exam. ˆ The exam is closed book, closed notes, and closed electronics,

More information

Basics of Programming with Python

Basics of Programming with Python Basics of Programming with Python A gentle guide to writing simple programs Robert Montante 1 Topics Part 3 Obtaining Python Interactive use Variables Programs in files Data types Decision-making Functions

More information

CS150 Sample Final Solution

CS150 Sample Final Solution CS150 Sample Final Solution Name: Section: A / B Date: Start time: End time: Honor Code: Signature: This exam is closed book, closed notes, closed computer, closed calculator, etc. You may only use (1)

More information

CISC 181 Lab 2 (100 pts) Due: March 7 at midnight (This is a two-week lab)

CISC 181 Lab 2 (100 pts) Due: March 7 at midnight (This is a two-week lab) CISC 181 Lab 2 (100 pts) Due: March 7 at midnight (This is a two-week lab) This lab may be done individually or with a partner. Working with a partner DOES NOT mean, you do the evens, and I ll do the odds.

More information

CS 1110, LAB 1: PYTHON EXPRESSIONS.

CS 1110, LAB 1: PYTHON EXPRESSIONS. CS 1110, LAB 1: PYTHON EXPRESSIONS Name: Net-ID: There is an online version of these instructions at http://www.cs.cornell.edu/courses/cs1110/2012fa/labs/lab1 You may wish to use that version of the instructions.

More information