iGCSE Computer Science - Distance Learning

Tutor Marked Assignment 6
Tutor Marked Assignment 8 (Programming)

Data Transmission & Error Checking

When data is sent through a network or between any 2 devices it is important to identify that the data that is being received is the same as the data that was sent. Making sure but the data is correct is called error checking and there are several ways that our devices can identify and fix errors that occur when transmitting data.

In this lesson, we will be looking at some of the ways that our computers identify and fix errors and in the video part of this lesson we’ll go into more detail about how to follow these processes and identify errors ourselves.


One of the most basic forms of error checking is parity. When a bit pattern is transmitted across the network the receiving device will count the number of ones in the bit pattern and identify whether these are odd or even. If the sending computer said that there were an odd number of ones and receiving computer receives an even number of ones than an error has been detected. An alternative way of identifying whether a computer is using odd or even parity is using a system known as majority voting  – this simply looks at the number of bit patterns to see how many are odd and how many are even and chooses the majority as likely to be correct.

Check Digits

Another way of identifying errors is to create a calculation on the data and add an extra digit at the end called a check digit. Check digits are calculated in several different ways and can be seen on many items that we use daily such as bank cards and the ISBN that you see at the back of books that helps to uniquely identify them. When a check digit is used the system but is verifying the number is correct performs the calculation again on all of the numbers except the check digit and then compares the two numbers to make sure that they are the same. This means that both systems need to be aware of what calculation was performed to create the check digit in the 1st place.

As part of this lesson, you have been asked to create some python programs. To do this, you can use this embedded code editor (remember to download your work if you want to save your code!), or use your installed Python editor (IDLE or Mu) program. Creating examples like this using python will help you to become familiar with the coding language and is also a good way to learn some of the theory in a more interactive way. There is some pseudocode in your assignment to help you with these.

Code Challenge 1 – Parity

Code Challenge 2 -Check Digits