Chapter 16 Exercises¶

1. Fix syntax 6 errors in the code below so that the code runs correctly. It should set combined to the concatenation of start and name. It should print the length of the combined string, print the combined string, and it should print the result of name * 3.

Change the first ' to a " in line 1. Change the " to a ' in line 2. Add a + after start in line 3. Add a ) at the end of line 4. Add a ( and ) on line 6.

2. Add code to line 1 so that the code below prints 14.

aString can be any 4 character string

3. Fix the 5 syntax errors in the code below so that it runs. It should print the length of myFirstList and print the result of myFirstList * 3. Then it should set mySecondList to the concatenation of myFirstList and a list containing 321.4. Then it should print the value of mySecondList.

Add a comma before the 13 on line 1. Add a ) at the end of line 2. Change line 3 to myFirstList. Add a ] at the end of line 4. Add a ) at the end of line 5.

4. Fix the errors so that the procedure prints “My name is JohnJohn” and “19”.

Add quotations around John on line 8. Add a space after “is” in line 2. In line 3, change the * after start to a +. In line 5 add a ) after combined. Indent lines 2 through 5.

5. Fix 5 syntax errors in the code below so that it runs and prints the contents of items.

Add a , between 6 and 8 on line 7. Change the ' to a " on line 2. Put a [ before the 0 on line 3. Add ( before items and ) after on line 5.

6. Complete the code on lines 4 and 5 so that the function returns the average of a list of integers.

On line 4, add sum = sum + num and on line 5, add sum/ len(aList).

7. Fix the indention in the code below so that it runs correctly. It should loop and add the current value of source to soFar each time through the loop. It should also print the value of soFar each time through the loop.

Indent lines 4 and 5 as shown below.

8. Fix the code so that the code prints “[‘hihi’, 0, 0, 4]” .

On line 1, add a , before “2”. On line 2, it should be items[0] and a + instead of a *. On line 3, it should be items[1].

9. Fix 4 syntax errors in the code below. After the code executes the list soFar should contain the reverse of the source list.

Add a comma between is and a on line 2. Add a ] at the end of line 5. Add a : at the end of line 8. Change line 11 to soFar.

10. The code below currently prints the reverse of a list. Change it so that it prints a mirrored version of the list. It should print “[‘list’, ‘a’, ‘is’, ‘This’, ‘This’, ‘is’, ‘a’, ‘list’]”.

In the for loop make soFar equal to [source[index]] + soFar + [source[index]].

11. Change the following code into a function. It should take the list and return a list of the values at the even indicies.

Define a function that takes a list and then call the function and pass in the list. Print the result.

12. The following code creates and prints a list of even numbers. Change it and add to it so that it creates a list of all multiples of 5 from 0 to 50, inclusive.

Change numbers to equal range(1,51,5) and the range in the for loop to (0,len(numbers)).

13. Change the following into a procedure. It prints a countdown from 5 to 0. Have it take the starting number for the countdown as a parameter. Print each value till it gets to 0.

Define the procedure and call it. Be sure to pass the number to start the countdown at.

14. Fix the errors so that the code individually adds each item from source to newList. Make the range decrement, so it starts from the end, but keep newList in the same order as source.

On line 6, the range should be (len(source) - 1, -1, -1). Indent line 9 and switch the order the items are added.

15. Write a function that returns the values at the odd indices in a list. The function should take the number list as a parameter. If it is passed [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10] for example, it should return [1, 3, 5, 7, 9].

See the function below. Be sure to create the function and call it and print the result.

16. Write a function that takes a list of numbers as a parameter and adds 5 to each number and returns the list.

You need to know the index of each item in the list so use the range function in the for loop.

17. Write a function that takes a list of numbers and returns the sum of the positive numbers in the list.

Define the function as shown below. Be sure to accumulate and return the sum. Call the function and print the result.

18. Write a function that takes in a list of numbers as a parameter. The function should calculate the sum of all the positive numbers in the list, the absolute value of the sum of the negative numbers, and return the average of the two sums.

Define the function as shown below.