Past Papers
CSEC IT P2 — May/June 2025
CSEC May/June 2025

CSEC Information Technology — Paper 2 Solutions

Step-by-step worked solutions for the structured-response paper. Free, mobile-friendly, no signup.

Paper 2 (Structured) 4 compulsory questions 2 hours 15 minutes
📄 Need the original paper? Open the PDF →
Question 1

Hardware (peripherals & printers) and database design (FARMERS & FARM tables). (20 marks)

(a)(i) Circle TWO peripheral devices in the list. Devices given: Motherboard, Microphone, Monitor, Keyboard, Compact disc, Mouse. (2 marks)

A peripheral device is a device added to the computer, connected to and controlled by the CPU but not part of the system unit itself.

  • Motherboard ✗ — it IS the system unit (not peripheral).
  • Microphone ✓ — peripheral input device.
  • Monitor ✓ — peripheral output device.
  • Keyboard ✓ — peripheral input device.
  • Compact disc ✗ — it's a storage medium, not the device itself.
  • Mouse ✓ — peripheral input device.

Circle any TWO of: Microphone, Monitor, Keyboard, Mouse.

(a)(ii) For the TWO peripheral devices circled, state how EACH may be used by an individual in the music industry. (2 marks)

Match each circled device to a music-industry use (1 mark each). For example:

  • Microphone — used to record vocals or live instruments into recording software (e.g., recording an artist's voice in a studio).
  • Keyboard — a MIDI keyboard is used to play and record melodies, basslines and synth parts directly into a digital audio workstation.
  • Monitor — used to display the audio editing software (waveforms, mix levels) so the producer can see what is being recorded.
  • Mouse — used to navigate, drag clips, edit waveforms and control the recording software interface.
(b)(i) Name ONE of the two categories of printers. (1 mark)

The two main categories are impact and non-impact printers. State either one (1 mark).

(b)(ii) Outline ONE difference between a dot-matrix printer and a thermal printer. (2 marks)

State a clear distinction (1 mark for naming the feature, 1 mark for the contrast). Example:

Printing mechanism: A dot-matrix printer uses an impact mechanism — tiny pins strike an inked ribbon against the paper to form characters as a matrix of dots. A thermal printer uses a non-impact mechanism — heated pins selectively darken specially coated thermal paper (no ink, no ribbon).

Other valid contrasts: noise level (dot-matrix is loud; thermal is silent); media (dot-matrix uses ordinary paper; thermal needs coated paper); ability to print carbon copies (dot-matrix yes; thermal no); print speed and output longevity.

(c) Provide THREE reasons why a laser printer should be chosen over an inkjet printer (for a musician sourcing a printer). (3 marks)

Any three (1 mark each):

  1. Faster print speed — laser printers produce pages-per-minute much faster than inkjets, useful for printing scores, flyers and tickets in bulk.
  2. Lower cost per page over time — toner cartridges last for many more pages than inkjet ink cartridges.
  3. Sharper, more professional text quality — laser print does not smudge or run when wet; inkjet print can.
  4. More durable output — toner is fused into the paper and resists fading better than inkjet ink.
  5. Better suited for high-volume printing — laser printers are designed for higher monthly duty cycles.
(d)(i) In the database table FARM, name the field by which EACH record can be uniquely identified. (1 mark)

The FarmID field — every farm has a unique FarmID. (Note: the FarmID values shown are 002, 192, 778, 252, 123 — all different.)

(d)(ii) State the fields that must be linked in order to create a relationship between the two tables. (2 marks)

The link is between the primary key of one table and a foreign key in the other:

  • FARMERS.ID No. (primary key in FARMERS)
  • FARM.FarmerID (foreign key in FARM that references FARMERS.ID No.)

Each farm record points to the farmer who owns it via the matching ID number.

(d)(iii) Complete the Design View extract to show a simple query that will list the Farmer's full name, Region, Crop and FarmID for FarmerID number 1. (4 marks)
FieldFirstNameLastNameRegionCropFarmID
TableFARMERSFARMERSFARMERSFARMFARM
Sort
Show
Criteria=1 (or [FARM].[FarmerID]=1 if filtering on FarmerID)

Marks: 1 for Table row mapping, 1 for all 5 Show ticks, 1 for placing the criterion, 1 for getting the criterion correct.

(d)(iv) Complete the Datasheet View extract by displaying the result of the query in (d)(iii). (3 marks)

From the FARMERS table, FarmerID 1 = Jack Smith from Region 1. From the FARM table, FarmerID 1 has one farm — Banana, FarmID 002.

FirstNameLastNameRegionCropFarmID
JackSmith1Banana002

Mark allocation: 1 mark per correctly populated field row.

Question 2

Verification, validation and web technology concepts. (20 marks)

(a) Define EACH of the following terms: Verification; Validation. (2 marks)
  • Verification: the process of checking that data has been entered correctly (i.e., matches the source). Catches typing errors. Common method: enter the data twice and compare.
  • Validation: the process of checking that data is sensible / reasonable — i.e., falls within expected limits or follows expected rules. Catches obviously wrong values regardless of where they came from.
(b) State ONE example of a typical data entry error. (1 mark)

Any one of: typing error (e.g., "23" entered as "32" — transposition); missing data (a required field left blank); wrong-type entry (typing letters into a numeric field); incorrect format (e.g., date entered as 13/13/2025).

(c) For EACH validation check, state ONE example of its use. (3 marks)
Validation CheckExample of Use
Range checkVerifying a student's age is between 1 and 100; or a month entry between 1 and 12.
Data type checkEnsuring the "Age" field accepts only integers and rejects letters.
Presence checkEnsuring a required field — like Surname or Email — is not left empty before submission.
(d)(i) Describe how a double data entry check can be applied on a student's application form with respect to confirming the student's age. (1 mark)

The student is asked to type the age twice (e.g., once in "Age" and once in "Confirm Age"). The system compares the two entries — if they match, the value is accepted; if they differ, the user is prompted to re-enter, catching typing errors.

(d)(ii) State the type of validation check for: (a) age must correspond with calculated date of birth; (b) NIS must have three alphanumeric chars then six numeric (XXX-999999); (c) password must have a specific number of characters. (3 marks)
  • (a) Consistency check (also known as an Inconsistency check) — the two related fields (age and DOB) must logically agree with each other; the validation flags any conflict.
  • (b) Format check (also called picture check) — the entry must follow a specific pattern of letters and digits.
  • (c) Length check — number of characters in the entry is checked against a required count.
(e) Describe the steps Jane should take to determine the number of words in her essay (in word-processing software). (2 marks)
  1. Open the document in the word processor (e.g., Microsoft Word).
  2. Click the Review tab → Word Count; or simply read the word count from the status bar at the bottom of the window. A dialog will display the total number of words (and characters, paragraphs, etc.).
(f) Complete the table by inserting the MOST appropriate web technology concepts (Webpage, HTML, HTTP, Hyperlink, Web browser, Mail merge) into the description. (5 marks)
Web Technology ConceptDescription
HTMLA language used to create documents viewed on the World Wide Web.
HyperlinkA clickable word or image that opens a file or application.
Mail mergeA document is created as a template and is used to create multiple personalized documents for distribution.
Web browserA program used to view information on the World Wide Web.
WebpageA single document on the internet.

(HTTP is unused but listed as a distractor.)

(g) The URL https://www.csec.org/results is used by students to gain access to their examination results. Describe EACH of the THREE components of the URL. (3 marks)
  1. https — the protocol (HyperText Transfer Protocol Secure). It defines how the browser and server exchange data securely (encrypted with TLS).
  2. www.csec.org — the domain name. It identifies the website on the Internet (csec is the second-level domain; .org is the top-level domain). The "www" is the host/subdomain.
  3. /results — the path (or resource location). It tells the server which specific page or file on the site to deliver.
Question 3

Hardware vs software, GUIs, calculations on storage, problem-solving steps, payroll algorithm pseudocode and flowchart. (25 marks)

(a) State ONE difference between hardware and software, and provide an example of EACH. (3 marks)

Difference: Hardware refers to the physical, tangible components of a computer — you can touch them. Software refers to the intangible programs and data — sets of instructions stored electronically.

  • Example of hardware: keyboard, mouse, monitor, hard drive, CPU.
  • Example of software: Microsoft Word, Windows 11 (operating system), Google Chrome (web browser).

Marks: 1 for the difference, 1 for each example.

(b)(i) Identify the category of the software being created for Manufacturer X. (1 mark)

Application software (specifically, custom/bespoke application software). It performs a specific task for the manufacturer — managing day-to-day operations.

(b)(ii) An accounts member's payroll application prints documents with only two lines on the paper. State the likely cause. (1 mark)

The most likely cause: a page-setup or printer-driver problem — the print job is being sent with the wrong page size / orientation, or the printer is set to draft/economy mode that truncates output. (Other plausible: low ink/toner causing the printer to stop after a couple of lines; corrupt print queue; software-side margin/page break configured incorrectly.)

(c) State TWO advantages of a graphical user interface over a command-line user interface. (2 marks)

Any two (1 mark each):

  • Easier to learn / more user-friendly — visual icons and menus replace memorising commands and syntax.
  • Faster for common tasks for non-technical users — point and click instead of typing.
  • Visual feedback — users see their files, folders and progress directly.
  • Less prone to typing errors — selection from menus avoids mistyped commands.
  • Multitasking is more intuitive — windows can be displayed side by side.
(d) A 2 terabyte solid state drive will be installed in the computer of the lab technician at Manufacturer X. Determine the number of 5 gigabyte files that could fit on the drive. Show all working. (3 marks)

Conversion: 1 TB = 1 024 GB (binary) or 1 000 GB (decimal). CSEC commonly uses the decimal convention: 1 TB = 1 000 GB.

Total storage = 2 TB = 2 × 1 000 = 2 000 GB

Number of 5 GB files = 2 000 ÷ 5 = 400 files

Answer: 400 files (using 1 TB = 1 000 GB). Using the binary convention (1 TB = 1 024 GB) → 2 048 ÷ 5 ≈ 409 files. Either is accepted with full working shown.

(e)(i) Place the problem-solving steps in the correct order. (3 marks)
  1. Define the problem.
  2. Propose and evaluate solutions.
  3. Determine the most efficient solution.
  4. Develop the algorithm.
  5. Test and validate the solution.

The order follows the standard CSEC IT problem-solving cycle: define → propose/evaluate → choose → algorithm → test.

(e)(ii) Complete the paragraph: "The values that are changeable during execution are known as ______ and the values set by the programmer that will never change during execution are known as ______." (2 marks)

The values that are changeable during the execution of the program are known as variables, and the values set by the programmer that will never change during the execution of the program are known as constants.

(f) Complete the algorithm snippet to show the payroll process for Manufacturer X.
Rate ← 5 ; ExpectedHours ← 40 ; OvertimeRate ← 6. (3 marks)

The completed algorithm:

Rate ← 5
ExpectedHours ← 40
OvertimeRate ← 6

Read hoursWorked

IF hoursWorked > ExpectedHours THEN
    OvertimeHours ← hoursWorkedExpectedHours
    Pay ← (OvertimeHours * OvertimeRate) + (ExpectedHours * Rate)
ELSE
    Pay ← hoursWorked * Rate
End IF

Mark allocation: 1 mark for OvertimeHours formula; 1 mark for Pay if overtime; 1 mark for Pay if no overtime.

(g) Draw a flowchart to represent the completed algorithm in (f). (7 marks)

The flowchart should use standard symbols. Description of the structure top-to-bottom:

  1. Start (oval/terminator)
  2. Process: Rate ← 5 ; ExpectedHours ← 40 ; OvertimeRate ← 6 (rectangle)
  3. Input: Read hoursWorked (parallelogram)
  4. Decision: hoursWorked > ExpectedHours? (diamond) — branches Yes / No
  5. YES branch: Process: OvertimeHours ← hoursWorked − ExpectedHours, then Process: Pay ← OvertimeHours×OvertimeRate + ExpectedHours×Rate
  6. NO branch: Process: Pay ← hoursWorked × Rate
  7. Both branches re-merge below the decision
  8. Output: Display Pay (parallelogram)
  9. End / Stop (oval/terminator)

Marks (typical): 1 Start/End oval; 1 Input parallelogram; 1 Decision diamond with Yes/No labels; 2 Process boxes (one per branch with correct formulas); 1 Output box; 1 correct flow direction with arrows.

Question 4

Transmission media, spreadsheet sorting/charting, syntax errors, data types, and a while-loop pseudocode. (35 marks)

(a) Place the transmission media (Twisted pair, Coaxial cable, Satellite, Microwave, Fibre optics, Infrared) into the appropriate category. (5 marks)
Wired Transmission MediaWireless Transmission Media
Twisted pair (given example)Satellite
Coaxial cableMicrowave
Fibre opticsInfrared

1 mark for each correctly categorised medium beyond the example.

(b)(i) State ONE formatting feature applied in the spreadsheet image above. (1 mark)

Any one observable feature: bold text in the column headers; merged cells with "Logistics Hub" centred across A1:H1; bordered cells; alignment (centred / right-aligned numbers).

(b)(ii) The data in the spreadsheet is sorted. State the column on which the sorting feature was applied AND the sorting order. (2 marks)

Reading the H column (Total) values 1112, 1101, 1009, 932, 932, 919 — the Total column is in descending order.

Sorted on: Total (column H), Descending order.

(b)(iii) Write the formula/function in Cell H3 to calculate the number of containers shipped during the week for Carva Shipping. (2 marks)

Carva Shipping is in row 3 (after the header rows). The total for the week sums Mon–Sat (columns B through G):

=SUM(B3:G3)

(Or equivalently =B3+C3+D3+E3+F3+G3.)

(b)(iv) Write the function used to determine the LOWEST number of containers shipped on Wednesday. (2 marks)

Wednesday is column D. The shipping data is in rows 3–7 (one per shipping line). Use:

=MIN(D3:D7)

(c)(i) State the type of chart used to represent the data in Figure 1. (1 mark)

Column chart (specifically a clustered (multi-series) column chart, since each shipping line has a column for each day of the week).

(c)(ii) Using the spreadsheet data in (b), list the steps for creating the chart shown in Figure 1. (2 marks)
  1. Highlight / select the data range including the row headers (shipping line names) and column headers (days), e.g., A2:G7.
  2. Click InsertChart → choose Clustered Column.
  3. Add a chart title ("The Logistics Hub – Activity By Week"), axis labels ("Shipping Line", numerical y-axis), and a legend showing the days.

Any two clear, ordered steps earn full marks.

(d) Define the term 'syntax error'. (1 mark)

A syntax error is a mistake in the rules/grammar of the programming language — code that does not follow the language's required structure (e.g., missing semicolon, mis-spelled keyword, unmatched bracket). It prevents the program from compiling/running.

(e) Complete the table with the data type for each variable. (4 marks)
VariableData Type
FirstNameString (or Character if a single letter)
ItemPriceReal (or Currency / Floating-point) — money values have decimals
Receipt_NumberInteger (whole number identifier)
InstockBoolean (TRUE/FALSE — is the item in stock or not)

1 mark each.

(f) Using a WHILE loop, write pseudocode to: accept a whole number, print "Positive Number" if > 0, "Negative Number" if < 0, and "You have entered a zero. Goodbye" if equal to 0. Loop continues until zero is entered. Declare all variables.
Start
num = 0

print "Enter a whole number:"
read num

WHILE num <> 0 DO
    IF num > 0 THEN
        print "Positive Number"
    ELSE
        print "Negative Number"
    End IF

    print "Enter another whole number:"
    read num
ENDWHILE

print "You have entered a zero. Goodbye"
Stop

Marking guide (typical): variable declaration, initial input ("priming read"), correct WHILE condition, IF/ELSE for >0 vs <0, re-input inside the loop, final farewell message after the loop. Each major construct = 1 mark.

Solutions generated by Kairu — Student Hub's AI system, trained by The Student Hub. AI can make mistakes — always cross-check tricky answers with your teacher and class notes.