← IGCSE Computer Science Paper 1

Echo check

The receiver sends a copy of the received data back to the sender, who compares it with the original. A match means no error was detected; a mismatch means the data is sent again.

Understanding Echo check in IGCSE Computer Science Paper 1

What it does: In an echo check a mismatch shows an error, so the sender sends the data again. The receiver echoes back what it received so the sender can check it. The sender still holds the original data, so the sender does the comparing. The echo comes from the receiver, so the comparison can only happen after the data has travelled and been echoed back. The resend should happen on a mismatch (echo != original). On a match the transmission is accepted.

Common mistakes: The condition is reversed. When the echo matches the original data, no error was detected. The line should be IF echo = data THEN, so the 'no error detected' output belongs to a match. In an echo check the sender does the comparison, because only the sender still has the original data. The line should be SENDER compares echo to data.

Class: _____________________  ·  Name: _____________________  ·  Date: _________

Free printable worksheet with full answer key — or add this module to a class and your students practise it interactively.

This module's key terms are also in a printable crossword (Modules 168–178) and word search (Modules 168–188).

Take this worksheet further — free with Cloodit

Each concept is reinforced from every angle — learned, then applied, then tested.

Learning
Duo
In an echo check, who sends a copy of the data back?
The receiver sends a copy back to the senderThe sender sends a copy back to the receiver
Matches
The sender checks the data before it is sent, so no echo is needed
↓
In an echo check the sender compares the echo it gets back with the original it sent. The check happens after the receiver sends the copy back, not before sending.
Applying
Meanings
Term
echo check
Meaning
The receiver sends a copy of the received data back to the sender, who compares it with the original. A match means no error was detected; a mismatch means the data is sent again.
Practice
SEND data TO receiver
Testing
Gaps
IF echo = sent OUTPUT "OK"
Check Answer
Spots
3COMPARE echo WITH data
4IF echo ≠ data THEN

Cloodit turns curriculum-aligned coding content into journeys students work through one biome at a time.

The 'Peregrine Falcon' badge — Operator Ace, one of Cloodit's 106 collectible badges
Students earn collectable badges

Over 100 of them, across seven natural biomes.

Study Buddy
Students build a real study resource

Turns their work into revision material ready for Flash Cards and Exam study.

Diamond Dash — one of Cloodit's live, competitive Sprint games
Students lock in with Sprints

Live, competitive practice for the start of the lesson or a teacher-led lesson finisher.

A Cloodit certificate of achievement, ready to personalise and print
Custom printable certificates

Honour your top performers, or encourage a student who's trying hard — ready to print in seconds.

Quick Questions

1. In an echo check, who sends a copy of the data back?
A. The sender sends a copy back to the receiver
B. The receiver sends a copy back to the sender ✓
The receiver echoes back what it received so the sender can check it.
2. Who compares the echoed data with the original in an echo check?
A. The sender ✓
B. The receiver
The sender still holds the original data, so the sender does the comparing.
3. The echoed data matches the original exactly. What does this mean?
A. No error was detected ✓
B. The data must be sent again
A match means no error was detected. A mismatch is what triggers sending again.
4. The echoed data is different from the original. What happens next?
A. The sender sends the data again ✓
B. The receiver deletes the original data
A mismatch means an error was detected, so the data is sent again.
5. Which is the correct order for an echo check?
A. Compare, send, echo back
B. Send, echo back, compare ✓
The sender sends the data, the receiver echoes it back, then the sender compares the echo with what it sent.

Match the Pairs

echo = receive(data) → The receiver takes in the data and keeps a copy to send back to the sender as an echo.
IF echo == original THEN → The sender compares the echo with what it sent; a match means no error was detected.
A mismatch between the echo and the original means the data must be sent again → IF echo != original THEN resend(data)
The receiver echoes the data back to the sender after receiving it → send(echo, sender)
The sender checks the data before it is sent, so no echo is needed → In an echo check the sender compares the echo it gets back with the original it sent. The check happens after the receiver sends the copy back, not before sending.
IF echo == original THEN resend(data) → Resending on a match is wrong. A match means no error was detected, so the data is only sent again when the echo does not match.

Key Term

echo check
The receiver sends a copy of the received data back to the sender, who compares it with the original. A match means no error was detected; a mismatch means the data is sent again.

Fill in the Blanks

1. SEND sent TO receiver RECEIVE echo FROM receiver IF echo = sent THEN OUTPUT "OK"
Hint: Type the keyword that follows the condition in an IF statement
2. IF echo <> sent THEN SEND sent AGAIN ENDIF
Hint: Type the operator that means not equal, so a mismatch triggers a resend
3. sender: SEND data TO receiver receiver: ECHO data BACK TO sender sender: COMPARE reply WITH data
Hint: Type the keyword for what the receiver does with the data it received
4. IF echo = sent THEN OUTPUT "No error" ELSE SEND sent AGAIN
Hint: Type the keyword that starts the branch run when the echo does not match
5. SEND sent TO receiver RECEIVE copy FROM receiver COMPARE copy WITH sent
Hint: Type the variable name that stores the copy sent back by the receiver

Spot the Error

Question 1
A SEND data TO receiver
B RECEIVER SENDS echo TO sender
C COMPARE echo WITH data
D IF echo ≠ data THEN
E OUTPUT no error detected
F ELSE send data again
Line D — The condition is reversed. When the echo matches the original data, no error was detected. The line should be IF echo = data THEN, so the 'no error detected' output belongs to a match.
Question 2
A SENDER sends 01101100
B RECEIVER echoes it back
C RECEIVER compares echo to data
Line C — In an echo check the sender does the comparison, because only the sender still has the original data. The line should be SENDER compares echo to data.
Question 3
A SENDER sends data
B RECEIVER gets data
C RECEIVER sends parity bit back
D SENDER compares echo to data
Line C — An echo check sends back a copy of the received data, not a parity bit. The line should be RECEIVER echoes copy of data so the sender can compare it with the original.
Question 4
A RECEIVER sends data
B RECEIVER echoes data back
C SENDER compares echo to data
Line A — The echo check starts with the sender sending the data. The receiver only echoes it back afterwards. The line should be SENDER sends data.
Question 5
A echo ← RECEIVER_ECHO(sent)
B IF echo = echo THEN
C OUTPUT no error detected
D ELSE
E SEND sent again
Line B — The echo is being compared with itself, which is always true, so errors would never be found. The echo must be compared with the original data: IF echo = sent THEN.

Student with a class code? Join your class →