Homework 3 (1)

You might also like

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 3

Homework 3 Errors and testing

Unit 8 Logic and languages

Name:............................................................................. Class:................... Mark:................

1. (a) Syntax errors are commonly made when writing a program.


Explain what is meant by a syntax error. [2]
When the structure and grammar does not meet the requirements of the program.
Examples would include: misplaced commas and punctuation

(b) Other than a syntax error, explain one other type of error that can be made when
programming. [2]
Logical arror where the code runs but it does not execute in the way you meant it to

2. The following pseudocode program is designed to calculate the average length of time you
live in the same home.
1 moves = int(input("How many times have you moved home in your life?
"))
2 age = int(input("How old are you? ))
3 averageTime = age / moves
4 print(averageTime)
(a) State the syntax error in line 2. [1]
There is no end to the speech marks

(b) A user enters that they have moved 2 times and they are 15 years old.
State the output from the program? [1]
7.5

1
Homework 3 Errors and testing
Unit 8 Logic and languages

(c) If they have moved twice, they have lived in three houses. Therefore the averageTime
they have lived in each house is 5 years.
State the type of error is in this program. [1]
Logical error
1 (d) Write or rewrite one line of code to fix the problem. [2]
moves = int(input("How many times have you moved home in your life? "))
+ 1

3. The following pseudocode calculates and outputs two values k and j. It then calculates and
outputs two further values t and a. The array x is indexed from 0.
x = [7, 9, 6, 2, 4]
t = x[0]
k = x[0]
j = x[0]
for n = 1 to 4
t = t + x[n]
if x[n] > k then
k = x[n]
endif
if x[n] < j then
j = x[n]
endif
next n
print("k = " + str(k) + "j = " + str(j))
(a) Complete the trace table below. [6]

t k j n x[n] A OUTPUT
7 7 7 1 9
16 9 7 2 6
22 9 6 3 2
24 9 2 4 4
28 9 2 K=9j=2

(b) Describe what the program does. [2]


Prints the highest and lowest values in a list and calculates the output

(c) List two ways in which the program could be made easier to understand and more
maintainable. [2]
Creating a function for the loop

2
Homework 3 Errors and testing
Unit 8 Logic and languages

Make the variable names more appropriate, eg. J = highestvalue

(d) State one technique that has been used in the code that helps to keep
it maintainable. [1]
Segmentation of the code.

[Total 20 marks]

You might also like