Vertroulik
NASIONALE
SENIOR SERTIFIKAAT
GRAAD 12
INLIGTINGSTEGNOLOGIE V1
NOVEMBER 2025
PUNTE: 150
TYD: 3 uur
Hierdie vraestel bestaan uit 31 bladsye, 2 bladsye met data,
2 bladsye vir beplanning en ꞌn aparte inligtingsblad.
Kopiereg voorbehou Blaai om asseblief
Skip to contentAll 2025 papers 





View all





Information Technology Grade 12 P1 NSC November 2025 QP
Grade 12 Information Technology Paper 1 question paper from the NSC November Exam 2025 (Afrikaans), 36 pages. Read online or download the free PDF.
Information Technology · Grade 12 · NSC November Exam · 2025. Question paper, 36 pages. Read online or download the PDF.
- Subject
- Information Technology
- Grade
- Grade 12
- Document type
- Question paper
- Year
- 2025
- Exam period
- NSC November Exam
- Paper
- 1
- Curriculum
- CAPS
- Pages
- 36
- File size
- 1.5 MB
Free to read online, no sign-up needed
Loading document…
Loading document…
1 of 36
This exam
NSC November Exam 2025
Document textSearch extracted text and jump to a page.
Inligtingstegnologie/V1 2 DBE/November 2025
NSS Vertroulik
INSTRUKSIES EN INLIGTING
1. Hierdie vraestel is in VIER afdelings ingedeel. Kandidate moet AL die vrae in
AL VIER afdelings beantwoord.
2. Twee leë bladsye wat vir beplanningsdoeleindes gebruik kan word, is aan die
einde van die vraestel ingesluit.
3. 'n Inligtingsblad is voorsien wat jy aan die einde van die eksamensessie moet
voltooi. Maak seker dat AL die inligting wat jy verskaf het, korrek is en lewer die
inligtingsblad in voordat jy die eksamenlokaal verlaat.
4. Die duur van hierdie eksamen is drie uur. As gevolg van die aard van hierdie
eksamen is dit belangrik om daarop te let dat jy nie toegelaat sal word om die
eksamenlokaal voor die einde van die eksamensessie te verlaat nie.
5. Hierdie vraestel is opgestel met programmeringsterme wat kenmerkend vir
Delphi as programmeringstaal is. Die Delphi-programmeringstaal moet gebruik
word om die vrae te beantwoord.
6. Maak seker dat jy die vrae beantwoord volgens die spesifikasies wat in elke
vraag gegee word. Punte sal volgens die voorgeskrewe vereistes toegeken
word.
7. Beantwoord slegs wat in elke vraag gevra word. Byvoorbeeld, indien die vraag
nie vir datavalidering vra nie, sal geen punte vir datavalidering toegeken word
nie.
8. Jou programme moet op só ꞌn manier gekodeer word dat dit met enige data sal
werk en nie net met die voorbeelddata wat voorsien is of enige data-uittreksels
wat in die vraestel verskyn nie.
9. Roetines, soos soek, sorteer en seleksie, moet vanuit eerste beginsels
ontwikkel word. Jy mag NIE die ingeboude funksies van die
Delphi-programmeringstaal vir enige van hierdie roetines gebruik NIE.
10. Alle datastrukture moet deur jou, die programmeerder, verklaar word, tensy die
datastrukture verskaf word.
11. Jy moet jou werk gereeld stoor op die disket/CD/DVD/geheuestokkie wat aan
jou gegee is of op die skyfspasie wat vir hierdie eksamensessie aan jou
toegeken is.
12. Maak seker dat jou eksamennommer as kommentaar verskyn in elke program
wat jy kodeer, asook op elke gebeurtenis wat aangedui word.
13. Indien dit vereis word, druk die programmeringskode van al die programme/
klasse wat jy voltooi het. Jou eksamennommer moet op alle drukstukke
voorkom. Jy sal ná die eksamensessie ꞌn halfuur tyd vir drukwerk gegee word.
Kopiereg voorbehou Blaai om asseblief
Inligtingstegnologie/V1 3 DBE/November 2025
NSS Vertroulik
14. Aan die einde van hierdie eksamensessie moet jy ꞌn disket/CD/DVD/
geheuestokkie inlewer met al jou werk daarop gestoor OF jy moet seker maak
dat al jou werk op die skyfspasie gestoor is wat vir hierdie eksamensessie aan
jou toegeken is. Maak seker dat al die lêers gelees kan word.2025
15. Die lêers wat jy benodig om hierdie vraestel te voltooi, is aan jou gegee op ꞌn
disket/CD/DVD/geheuestokkie of op die skyfspasie wat aan jou toegeken is.
Die lêers word in die vorm van wagwoordbeskermde uitvoerbare lêers verskaf.
Doen die volgende:
• Dubbelklik op die volgende wagwoordbeskermde uitvoerbare lêer:
DataNov2025.exe
• Klik op die ꞌExtractꞌ-knoppie.
• Sleutel die volgende wagwoord in: SuSTF@rm2025
Nadat dit onttrek (ꞌextractedꞌ) is, sal die volgende lys lêers in die lêergids
(ꞌfolderꞌ) DataNov2025 beskikbaar wees:
Question 1: Question 3:
Question1_P.dpr Beehive_U.pas
Question1_P.dproj Question3_P.dpr
Question1_P.res Question3_P.dproj
Question1_U.dfm Question3_P.res
Question1_U.pas Question3_U.dfm
Question3_U.pas
Question 2: Question 4:
ConnectDB_U.pas Question4_P.dpr
FarmManagementDB - Copy.mdb Question4_P.dproj
FarmManagementDB.mdb Question4_P.res
MixedFarms.txt Question4_U.dfm
Question2_P.dpr Question4_U.pas
Question2_P.dproj
Question2_P.res
Question2_U.dfm
Question2_U.pas
Kopiereg voorbehou Blaai om asseblief
Inligtingstegnologie/V1 4 DBE/November 2025
NSS Vertroulik
AFDELING A
VRAAG 1: ALGEMENE PROGRAMMERINGSVAARDIGHEDE
Doen die volgende:
• Maak die onvolledige program in die Question 1-lêergids oop.
• Sleutel jou eksamennommer as kommentaar in die eerste reël van die
Question1_U.pas-lêer in.
• Kompileer en voer die program uit. Die program het tans geen funksionaliteit nie.
Voorbeeld van die grafiese gebruikerskoppelvlak (GGK (ꞌGUIꞌ)):
• Voltooi die kode vir elke afdeling van VRAAG 1, soos wat in VRAAG 1.1 tot
VRAAG 1.5 beskryf is.
Kopiereg voorbehou Blaai om asseblief
Inligtingstegnologie/V1 5 DBE/November 2025
NSS Vertroulik
1.1 Knoppie [1.1 - Increase value]
Die paneel pnlQ1_1 vertoon tans 'n heelgetalwaarde wat met die waarde
van 1 moet toeneem wanneer die knoppie geklik word.
Skryf kode om die volgende te doen:
• Onttrek ('Extract') die heelgetalwaarde wat op die paneel pnlQ1_1 vertoon
word.
• Vermeerder die waarde wat onttrek is, met die waarde van 1.
• Vertoon die waarde wat toegeneem het op die paneel pnlQ1_1.
Voorbeeld van afvoer nadat die knoppie geklik is en die waarde wat onttrek is,
met die waarde van 1 toegeneem het:
LET WEL: Elke keer wanneer die gebruiker op die knoppie 'Increase value'
klik, moet die waarde wat tans op die paneel vertoon word, met die
waarde van 1 toeneem.
Voorbeeld van afvoer nadat die knoppie vir die tweede keer geklik is:
(4)
1.2 Knoppie [1.2 - Volume]
Die prent hieronder toon 'n figuur van 'n driedimensionele vorm wat sye van
gelyke lengte het. Die lengte van elke sy word deur die letter 𝒙𝒙 verteenwoordig.
Kopiereg voorbehou Blaai om asseblief
Inligtingstegnologie/V1 6 DBE/November 2025
NSS Vertroulik
Die formule om die volume van die figuur te bereken, is soos volg:
𝟓𝟓(𝟑𝟑+ �𝟓𝟓)
𝑉𝑉𝑉𝑉𝑉𝑉𝑉𝑉𝑉𝑉𝑉𝑉 = 𝒙𝒙𝟑𝟑
𝟏𝟏𝟏𝟏
waar 𝒙𝒙 die lengte van die sye van die figuur verteenwoordig.
Die gebruiker moet die lengte van 𝒙𝒙 vanaf die spinredigeerder ('spin edit')
spnQ1_2 selekteer.
Skryf kode om die volgende te doen:
• Onttrek ('Extract') die lengte van die sy (𝒙𝒙) uit die spinredigeerder
spnQ1_2.
• Bereken die volume van die figuur deur die gegewe formule en ten minste
TWEE VERSKILLENDE voorafgedefinieerde wiskundige funksies te
gebruik.
• Vertoon die volume in die redigeerblokkie ('edit box') edtQ1_2, tot TWEE
desimale plekke geformateer.
Voorbeeld van afvoer indien die waarde van 6 as die lengte van 𝒙𝒙 geselekteer
is:
Kopiereg voorbehou Blaai om asseblief
Inligtingstegnologie/V1 7 DBE/November 2025
NSS Vertroulik
Voorbeeld van afvoer indien die waarde van 10 as die lengte van 𝒙𝒙 geselekteer
is:
(6)
1.3 Knoppie [1.3 - Shopping aisle]
'n Plaaslike kruidenierswinkel gebruik 'n koderingstelsel om klante te help om
gange ('aisles') met spesifieke voedselkategorieë te vind. Elke
voedselkategorie word deur 'n enkele alfabetletter voorgestel. Die alfabetletters
en die voedselkategorieë wat deur die letters voorgestel word, word in die tabel
hieronder gegee.
ALFABETLETTER KATEGORIEBESKRYWING
F Fruit and vegetables
D Dairy
B Butchery
S Sauces
P Pasta and rice
Die gebruiker moet 'n kode in die redigeerblokkie ('edit box') edtQ1_3 in die
volgende formaat insleutel:
<Aisle number>#<Alphabet letter>
Voorbeeld: 12#F verwys na gang ('aisle') 12 waar die vrugte- en groente-
voorraad gehou word.
Kopiereg voorbehou Blaai om asseblief
Inligtingstegnologie/V1 8 DBE/November 2025
NSS Vertroulik
Skryf kode om die volgende te doen:
• Onttrek die kode wat ingesleutel is uit die redigeerblokkie edtQ1_3.
• Skei die gangnommer en die alfabetletter wat die voedselkategorie
verteenwoordig van die kode wat ingesleutel is.
• Gebruik 'n gevalstelling ('case statement') en die alfabetletter van die kode
en stoor die korrekte kategoriebeskrywing in 'n veranderlike.
• Vertoon 'Aisle', die nommer van die gang ('aisle'), 'n dubbelpunt-
karakter (:), gevolg deur 'n spasie en die korrekte kategoriebeskrywing op
byskrif ('label') lblQ1_3 in die formaat:
Aisle <Aisle number>: <Category description>
Voorbeeld van afvoer indien die kode 12#F ingesleutel is:
Voorbeeld van afvoer indien die kode 3#S ingesleutel is:
LET WEL: Jy kan aanneem dat die kode wat ingesleutel is, geldig is. (11)
1.4 Knoppie [1.4 - Populate and display]
Die verklaring van 'n skikking met die naam arrNumbers, wat uit NEGE
elemente van tipe heelgetal bestaan, is voorsien.
Skryf kode om die volgende te doen:
• Ken 'n ewekansige ('random') getal in die reeks van 1 tot 15 (ingesluit) aan
elke element van skikking arrNumbers toe.
• Gebruik die memokomponent memQ1_4 om die ewekansige getalle uit
skikking arrNumbers, deur aandagstreep(-)-karakters geskei, te vertoon.
Kopiereg voorbehou Blaai om asseblief
Inligtingstegnologie/V1 9 DBE/November 2025
NSS Vertroulik
Voorbeeld van afvoer:
LET WEL: Die afvoer wat deur jou program vertoon word, kan van die
afvoervoorbeeld verskil aangesien die getalle ewekansig
gegenereer is. (8)
Kopiereg voorbehou Blaai om asseblief
Inligtingstegnologie/V1 10 DBE/November 2025
NSS Vertroulik
1.5 Knoppie [1.5 - Determine HCF]
Die vloeidiagram hieronder illustreer hoe om die grootste gemene faktor (GGF)
('highest common factor (HCF)') van enige TWEE positiewe heelgetalle te
bepaal.
Kopiereg voorbehou Blaai om asseblief
Inligtingstegnologie/V1 11 DBE/November 2025
NSS Vertroulik
Die gebruiker moet heelgetalwaardes vir Num1 en Num2 insleutel.
Kode is voorsien om:
• Die twee heelgetalwaardes Num1 en Num2 te onttrek en onderskeidelik in
iNum1 en iNum2 te stoor, en
• iHCF na nul (0) te inisialiseer
Skryf kode om die volgende te doen:
• Kodeer die stappe wat in die vloeidiagram voorsien is om die GGF ('HCF')
van die twee getalle wat ingesleutel is, te bepaal.
• Vertoon die GGF ('HCF') in redigeerblokkie ('edit box') edtQ1_5.
Voorbeeld van afvoer indien die getalle 6 en 4 ingesleutel is:
Voorbeeld van afvoer indien die getalle 27 en 36 ingesleutel is:
(11)
• Sleutel jou eksamennommer as kommentaar in die eerste reël van die programlêer
in.
• Stoor jou program.
• Druk die kode indien dit vereis word.
TOTAAL AFDELING A: 40
Kopiereg voorbehou Blaai om asseblief
Inligtingstegnologie/V1 12 DBE/November 2025
NSS Vertroulik
AFDELING B
VRAAG 2: DATABASISPROGRAMMERING
'n Diensverskaffer moet 'n versameling klein plase met verskillende boerderytipes, soos
pluimvee ('Poultry'), lewende hawe ('Livestock') en suiwel ('Dairy'), bestuur. Elke plaas
word deur slegs een ('n enkele) eienaar besit, terwyl een plaaseienaar baie plase kan
besit.
'n Databasis met die naam FarmManagementDB.mdb is geskep en bevat twee tabelle
met die name tblFarmOwners en tblFarms.
Die bladsye met data wat aan die einde van die vraestel aangeheg is, verskaf inligting
oor die ontwerp en die inhoud van die databasis.
Doen die volgende:
• Maak die onvolledige projeklêer met die naam Question2_P.dpr in die
Question 2-lêergids oop.
• Sleutel jou eksamennommer as kommentaar in die eerste reël van die
Question2_U.pas-lêer in.
• Kompileer en voer die program uit. Die program het tans beperkte funksionaliteit. Die
inhoud van die tabelle word vertoon, soos wat hieronder op die seleksie van die
oortjieblad (ꞌtab sheetꞌ) 2.2 - Delphi code getoon word.
Kopiereg voorbehou Blaai om asseblief
Inligtingstegnologie/V1 13 DBE/November 2025
NSS Vertroulik
Die verwantskap tussen die twee tabelle tblFarmOwners en tblFarms word hieronder
getoon.
• Volg die instruksies hieronder om die kode vir elke afdeling wat in VRAAG 2.1 en
VRAAG 2.2 beskryf word, te voltooi.
• Gebruik SQL-stellings om VRAAG 2.1 te beantwoord en Delphi-kode om
VRAAG 2.2 te beantwoord.
LET WEL:
• Die ꞌRestore databaseꞌ-knoppie word voorsien om die data wat in die databasis
voorkom, na die oorspronklike inhoud te herstel.
• Kode word voorsien om die GGK(ꞌGUIꞌ)-komponente met die databasis te koppel.
MOENIE enige van die kode wat voorsien is, verander NIE.
• TWEE veranderlikes word as globale veranderlikes verklaar, soos in die tabel
hieronder beskryf word.
Veranderlike Datatipe Beskrywing
tblFarmOwners TADOTable Verwys na die tabel tblFarmOwners
tblFarms TADOTable Verwys na die tabel tblFarms
Kopiereg voorbehou Blaai om asseblief
Inligtingstegnologie/V1 14 DBE/November 2025
NSS Vertroulik
2.1 Oortjieblad (ꞌTab sheetꞌ) [2.1 - SQL]
Voorbeeld van die grafiese gebruikerskoppelvlak (GGK (ꞌGUIꞌ)) vir
VRAAG 2.1:
LET WEL:
• Gebruik SLEGS SQL-stellings om VRAAG 2.1.1 tot VRAAG 2.1.5 te
beantwoord.
• Kode om die SQL-stellings uit te voer en die resultate van die navrae te
vertoon, is voorsien. Die SQL-stellings wat aan die veranderlikes sSQL1,
sSQL2, sSQL3, sSQL4 en sSQL5 toegeken is, is onvolledig.
Voltooi die SQL-stellings om die take wat in VRAAG 2.1.1 tot VRAAG 2.1.5
hieronder beskryf word, uit te voer.
2.1.1 Knoppie [2.1.1 - Farm details]
Vertoon die FarmName, NearestTown en SizeInHectares van al
die plase, wat in dalende orde volgens SizeInHectares gesorteer is.
Kopiereg voorbehou Blaai om asseblief
Inligtingstegnologie/V1 15 DBE/November 2025
NSS Vertroulik
Voorbeeld van afvoer van die eerste drie rekords:
(3)
2.1.2 Knoppie [2.1.2 - Contact details]
Vertoon die FullName en ContactNumber van alle plaaseienaars
wie se e-posadresse nie in die tabel tblFarmOwners gestoor is nie.
Voorbeeld van afvoer:
(2)
2.1.3 Knoppie [2.1.3 - Average farm size]
Die gemiddelde grootte van al die plase van die geselekteerde
boerderytipe ('farm type') moet bereken en in 'n nuwe veld met die
naam AverageSize gestoor word.
Kode is voorsien om die geselekteerde boerderytipe ('farm type') uit
die kombinasieblokkie ('combo box') cmbQ2_1_3 te onttrek en in 'n
veranderlike sFarmType te stoor.
Vertoon die FarmType en die AverageSize, tot TWEE desimale
plekke geformateer.
Voorbeeld van afvoer indien Livestock as die boerderytipe ('farm
type') geselekteer is:
(6)
2.1.4 Knoppie [2.1.4 - Young farm owners]
Vertoon die FullName, DateOfBirth en Age (berekende veld) van
alle plaaseienaars wat 25 jaar of jonger is. Die huidige stelseldatum
('current system date') moet gebruik word om die ouderdom as 'n
heelgetalwaarde te bereken.
Gebruik die formule hieronder om die ouderdom van die
plaaseienaars te bereken:
𝐶𝐶𝐶𝐶𝐶𝐶𝐶𝐶𝐶𝐶𝐶𝐶𝐶𝐶 𝑠𝑠𝑠𝑠𝑠𝑠𝑠𝑠𝑠𝑠𝑠𝑠 𝑑𝑑𝑑𝑑𝑑𝑑𝑑𝑑 − 𝐷𝐷𝐷𝐷𝐷𝐷𝐷𝐷𝐷𝐷𝐷𝐷𝐷𝐷𝐷𝐷𝐷𝐷𝐷𝐷ℎ
𝐴𝐴𝐴𝐴𝐴𝐴 =
365
Kopiereg voorbehou Blaai om asseblief
Inligtingstegnologie/V1 16 DBE/November 2025
NSS Vertroulik
Voorbeeld van afvoer:
LET WEL: Die formaat van die geboortedatum mag van hierdie
voorbeeld verskil as gevolg van jou rekenaar se
instellings. (7)
2.1.5 Knoppie [2.1.5 - Multiple farms in KZN]
Vertoon die FullName en die totale getal plase van elke
plaaseienaar wat meer as een plaas in die Durban- of
Pietermaritzburg-gebied besit. Die totale getal plase moet in 'n nuwe
veld met die naam TotalFarms gestoor word.
Voorbeeld van afvoer:
(7)
Kopiereg voorbehou Blaai om asseblief
Inligtingstegnologie/V1 17 DBE/November 2025
NSS Vertroulik
2.2 Oortjieblad (ꞌTab sheetꞌ) [2.2 - Delphi code]
Voorbeeld van die grafiese gebruikerskoppelvlak (GGK (ꞌGUIꞌ)) vir
VRAAG 2.2:
LET WEL:
• Gebruik SLEGS Delphi-programmeringskode om VRAAG 2.2 te
beantwoord.
• GEEN punte sal vir SQL-stellings in VRAAG 2.2 toegeken word NIE.
Knoppie [2.2 – Mixed-farm type]
'n Gemengdeboerdery-tipe verwys na 'n plaas met 'n kombinasie van
verskillende tipes boerdery-aktiwiteite, soos pluimvee en suiwel. Boere moet
versoek om na 'n gemengde boerdery te verander, indien hulle daarvoor
kwalifiseer. Slegs plase groter as 100 hektaar kwalifiseer om 'n
gemengdeboerdery-tipe te wees.
'n Tekslêer met die naam MixedFarms.txt, wat 'n lys bevat van FarmID's van
die plase wat moontlik as 'n gemengdeboerdery-tipe kan kwalifiseer, is
voorsien.
Die eerste DRIE reëls met teks in die MixedFarms.txt-tekslêer word hieronder
getoon.
Kopiereg voorbehou Blaai om asseblief
Inligtingstegnologie/V1 18 DBE/November 2025
NSS Vertroulik
Die program moet die boerderytipe ('farm type') na 'Mixed' opdateer indien die
plaas kwalifiseer om 'n gemengde boerdery te wees. Indien die plaas NIE
kwalifiseer NIE, vertoon die FarmID, FarmName en SizeInHectares van die
plaas in die 'rich edit' redQ2_2-komponent.
Kode is voorsien om die 'rich edit' redQ2_2-komponent skoon te maak en 'n
geskikte opskrif te vertoon.
Skryf kode om die volgende te doen:
• Toets of die tekslêer MixedFarms.txt bestaan en vertoon 'n geskikte
boodskap deur 'n 'ShowMessage'-dialoogblokkie ('dialog box') te gebruik
indien die tekslêer nie bestaan nie.
• Indien die tekslêer bestaan, lees elke FarmID vanaf die tekslêer.
o Identifiseer die plaas in die tblFarms-tabel.
o Toets of die plaas groter as 100 hektaar is:
- Indien waar, dateer die FarmType-veld van die plaas na 'Mixed'
op.
- Andersins, vertoon die FarmID, FarmName en SizeInHectares
van die plaas in die 'rich edit' redQ2_2-komponent, in die formaat
wat in die voorbeeld op die volgende bladsy getoon word.
Voorbeeld van rekords in die tblFarms-tabel voordat die FarmType verander
is:
Kopiereg voorbehou Blaai om asseblief
Inligtingstegnologie/V1 19 DBE/November 2025
NSS Vertroulik
Voorbeeld van rekords in die tblFarms-tabel nadat die FarmType verander is:
Voorbeeld van afvoer van plase wat in die tekslêer gelys is en nie as 'n
gemengdeboerdery-tipe ('mixed-farm type') kwalifiseer nie:
(15)
• Sleutel jou eksamennommer as kommentaar in die eerste reël van die programlêer
in.
• Stoor jou program.
• Druk die kode indien dit vereis word.
TOTAAL AFDELING B: 40
Kopiereg voorbehou Blaai om asseblief
Inligtingstegnologie/V1 20 DBE/November 2025
NSS Vertroulik
AFDELING C
VRAAG 3: OBJEK-GEORIËNTEERDE PROGRAMMERING
Heuning word gedurende warm seisoene gereeld uit 'n byekorf geoes. 'n Byekorf-
oesopspoorder word gebruik om die gesondheidstatus van 'n byekorf-kolonie te monitor
en na te gaan.
Doen die volgende:
• Maak die onvolledige program in die Question 3-lêergids oop.
• Maak die onvolledige objekklas Beehive_U.pas oop.
• Sleutel jou eksamennommer as kommentaar in die eerste reël van beide die
Question3_U.pas-lêer en die Beehive_U.pas-lêer in.
• Kompileer en voer die program uit. Die program het tans beperkte funksionaliteit.
Voorbeeld van die grafiese gebruikerskoppelvlak (GGK (ꞌGUIꞌ)):
• Voltooi die kode soos gespesifiseer in VRAAG 3.1 en VRAAG 3.2.
Kopiereg voorbehou Blaai om asseblief
Inligtingstegnologie/V1 21 DBE/November 2025
NSS Vertroulik
3.1 Die onvoltooide objekklas (TBeehive) wat voorsien is, bevat die verklaring van
ses attribute wat ꞌn Beehive-objek beskryf.
Die attribute van ꞌn Beehive-objek is soos volg verklaar:
Attribuut Tipe Beskrywing
fBeehiveID String 'n ID wat gebruik word om die byekorf
te identifiseer
fBeeCount Integer Die geskatte aantal bye in die byekorf
fPests Boolean Dui aan of plae tydens die laaste oes in
die byekorf gevind is
fNoOfHarvests Integer Aantal voltooide oeste in die byekorf
fTotalHoneyHarvested Real Die totale hoeveelheid heuning, in
kilogram, wat van die byekorf geoes is
fHarvestDates String 'n Aaneengeskakelde string wat al die
datums aandui waarop die byekorf tot
dusver geoes is, elke datum op 'n nuwe
reël
Die volgende metodes is voorsien:
• 'n Voltooide metode setPests wat die huidige status van die fPests-attribuut
sal verander
• 'n Voltooide toString-metode
Voltooi die kode in die objekklas soos wat in VRAAG 3.1.1 tot VRAAG 3.1.5
beskryf word.
3.1.1 Skryf kode vir 'n konstruktor-metode om DRIE parameters vir die
fBeehiveID-, fBeeCount- en fPests-attribute te ontvang.
Ken die parameterwaardes aan die onderskeie attribute toe en stel die
oorblywende attribute op die volgende waardes:
fNoOfHarvests =2
fTotalHoneyHarvested = 80
fHarvestDates = '2025/01/05' + #13 + '2025/06/23' (4)
3.1.2 Skryf kode vir 'n toegangsmetode ('accessor method') met die naam
getNoOfHarvests om die fNoOfHarvests-attribuut terug te stuur. (2)
3.1.3 Skryf kode vir 'n metode met die naam calcAverage, om die
gemiddelde hoeveelheid heuning wat in die korf geoes is, te bereken
en terug te stuur, deur die formule hieronder te gebruik.
𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇 ℎ𝑜𝑜𝑜𝑜𝑜𝑜𝑜𝑜 ℎ𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎
𝐴𝐴𝐴𝐴𝐴𝐴𝐴𝐴𝐴𝐴𝐴𝐴𝐴𝐴 =
𝑁𝑁𝑁𝑁𝑁𝑁𝑁𝑁𝑁𝑁𝑁𝑁 𝑜𝑜𝑜𝑜 ℎ𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎 (4)
Kopiereg voorbehou Blaai om asseblief
Inligtingstegnologie/V1 22 DBE/November 2025
NSS Vertroulik
3.1.4 Skryf kode vir 'n metode met die naam updateBeehiveDetails wat
'n parameterwaarde vir die hoeveelheid heuning geoes as 'n reële
waarde ontvang.
Skryf kode om die volgende te doen:
• Tel die parameterwaarde by die fTotalHoneyHarvested-
attribuut.
• Inkrementeer ('increment') die fNoOfHarvests-attribuut met
een.
• Voeg ('Join') die kode vir 'n nuwe reël (#13) en die stelseldatum
('system date') by die inhoud van die fHarvestDates-attribuut. (6)
3.1.5 Skryf kode vir 'n metode met die naam checkHealthStatus om 'n
Boolese ('Boolean') waarde TRUE terug te stuur wat aandui dat die
byekorf gesond ('healthy') is, of FALSE indien die byekorf nie
gesond is nie.
Daar moet aan die volgende kriteria voldoen word vir die status van
die byekorf om gesond te wees:
• Die aantal bye moet meer as 7 000 wees OF die aantal oeste
moet gelyk aan of minder as 3 wees.
• Daar moet geen plae in die byekorf wees nie. (6)
3.2 ꞌn Onvolledige program is in die Question 3-lêergids voorsien. Die program
bevat kode vir die objekklas om toeganklik te wees en verklaar ꞌn
objekveranderlike met die naam objBeehive.
Kode is in die FormCreate-metode voorsien om knoppie btnQ3_2_3 te
deaktiveer ('disable') en die 'rich edit' redQ3_2-komponent te formateer.
Skryf kode om die take wat in VRAAG 3.2.1 tot VRAAG 3.2.5 beskryf word, uit
te voer.
3.2.1 Knoppie [3.2.1 - Instantiate beehive object]
Voordat heuning uit 'n byekorf geoes word, moet die gebruiker die
besonderhede van die byekorf insleutel.
Kode is voorsien om die volgende te doen:
• Maak die 'rich edit' redQ3_2-komponent skoon.
• Onttrek die 'beehive ID' uit kombinasieblokkie ('combo box')
cmbQ3.
• Onttrek die aantal bye uit spinredigeerder ('spin edit') spnQ3.
• Onttrek die plaagstatus uit kontroleblokkie ('check box') chbQ3.
Kopiereg voorbehou Blaai om asseblief
Inligtingstegnologie/V1 23 DBE/November 2025
NSS Vertroulik
Skryf kode om die volgende te doen:
• Gebruik die inligting wat onttrek ('extracted') is om die
objBeehive-objek te instansieer.
• Vertoon die besonderhede van die objek in die 'rich edit'
redQ3_2 deur die gegewe toString-metode te gebruik.
Voorbeeld van toevoer en afvoer:
(5)
3.2.2 Knoppie [3.2.2 - Ready to harvest?]
Die gesondheidstatus van 'n byekorf moet nagegaan word voordat
'n nuwe oes plaasvind.
Skryf kode om die volgende te doen:
• Roep die checkHealthStatus-metode en vertoon 'n geskikte
boodskap in die byskrif ('label') lblQ3_2_2 om aan te dui of die
byekorf gesond is ('ready to harvest') of nie gesond is nie ('not
ready to harvest').
• Indien die byekorf gereed is om geoes te word, aktiveer
('enable') knoppie btnQ3_2_3.
• Indien die byekorf NIE gereed is om geoes te word NIE,
deaktiveer ('disable') knoppie btnQ3_2_3.
Kopiereg voorbehou Blaai om asseblief
Inligtingstegnologie/V1 24 DBE/November 2025
NSS Vertroulik
Voorbeeld van afvoer indien die byekorf gereed is om geoes te word:
Voorbeeld van afvoer indien die byekorf NIE gereed is om geoes te
word NIE:
(4)
3.2.3 Knoppie [3.2.3 - Honey harvested]
Die hoeveelheid heuning wat tydens 'n nuwe oes geoes is, moet by
die totale hoeveelheid heuning wat uit die byekorf geoes is, getel
word.
Kode is voorsien om die 'rich edit' redQ3_2-komponent skoon te
maak.
Skryf kode om die volgende te doen:
• Onttrek die hoeveelheid heuning wat geoes is uit die
redigeerblokkie ('edit box') edtQ3_2_3.
• Roep die updateBeehiveDetails-metode deur die hoeveelheid
heuning as 'n argument te gebruik.
• Vertoon die volgende in die redQ3_2-komponent:
o Die getal oeste in die formaat:
'Harvest number: ' <Number of harvests>
o Die opgedateerde besonderhede van die byekorf deur die
die toString-metode te gebruik
Kopiereg voorbehou Blaai om asseblief
Inligtingstegnologie/V1 25 DBE/November 2025
NSS Vertroulik
Voorbeeld van afvoer indien die heuning wat tydens die nuwe oes
ingesamel is 67,1 kg was en die getal voltooide oeste is drie:
(4)
3.2.4 Knoppie [3.2.4 - Average honey harvested]
Skryf kode om die relevante metode te roep om die gemiddelde
hoeveelheid heuning wat uit die byekorf geoes is, in 'n
ShowMessage-dialoogblokkie ('dialog box') te vertoon, tot TWEE
desimale plekke geformateer.
Voorbeeld van afvoer indien die totale hoeveelheid heuning ná drie
oeste 147,1 kg was:
(3)
3.2.5 Knoppie [3.2.5 - Change status of pests]
Die status van plae in die byekorf moet verander word, afhangende
daarvan of plae opgespoor is of nie.
'n Metode met die naam setPests, wat die huidige status van plae
in die byekorf sal verander, is in die objekklas voorsien.
Skryf kode om die volgende te doen:
• Roep die setPests-metode.
• Deaktiveer ('Disable') die btnQ3_2_3-knoppie.
Kopiereg voorbehou Blaai om asseblief
Inligtingstegnologie/V1 26 DBE/November 2025
NSS Vertroulik
Voorbeeld van die 'Honey harvested'-knoppie wat gedeaktiveer is
wanneer die gebruiker een keer op die 'Change status of pests'-
knoppie geklik het:
(2)
• Sleutel jou eksamennommer as kommentaar in die eerste reël van die objekklas en
die vormklas in.
• Stoor jou program.
• Druk die kode in die objekklas en die vormklas indien dit vereis word.
TOTAAL AFDELING C: 40
Kopiereg voorbehou Blaai om asseblief
Inligtingstegnologie/V1 27 DBE/November 2025
NSS Vertroulik
AFDELING D
VRAAG 4: PROBLEEMOPLOSSINGPROGRAMMERING
SustainaFarm Collective is 'n maatskappy wat navorsing doen oor volhoubare
boerderypraktyke in gebiede waar verskillende tipes gewasse geplant word.
Doen die volgende:
• Maak die onvolledige program in die Question 4-lêergids oop.
• Sleutel jou eksamennommer as kommentaar in die eerste reël van die
Question4_U.pas-lêer in.
• Kompileer en voer die program uit. Die program het tans beperkte funksionaliteit.
Voorbeeld van die grafiese gebruikerskoppelvlak (GGK (ꞌGUIꞌ)):
• Voltooi die kode vir elke afdeling van VRAAG 4, soos wat in VRAAG 4.1 en
VRAAG 4.2 beskryf word.
Kopiereg voorbehou Blaai om asseblief
Inligtingstegnologie/V1 28 DBE/November 2025
NSS Vertroulik
4.1 Die SustainaFarm Collective monitor die samestelling van grond in tien hektaar
boerderygrond deur die persentasiewaardes per hektaar vir klei ('Clay'), sand
('Sand') en slik ('Silt') in die grond te meet.
Jy is van die volgende voorsien:
• 'n Voltooide Display-prosedure
• Verklarings vir die volgende skikkings:
o 'n Gevulde eendimensionele skikking van tipe string waar elke element
van die skikking die hoeveelheid klei, sand en slik in die grond
verteenwoordig:
arrSoil: array[1..10] of String =
('20:50:10', '40:30:30', '30:28:30', '60:20:20',
'25:30:45', '50:40:10', '30:55:15', '45:35:20',
'35:0:55', '55:25:20');
o 'n Tweedimensionele skikking van reële tipe ('type real'):
arr2DSoil: array[1..10, 1..3] of Real;
4.1.1 Knoppie [4.1.1 - Extract]
Skryf kode om die Clay-, Sand- en Silt-waardes vir elke hektaar uit
die arrSoil-skikking te onttrek en dit in die gegewe
tweedimensionele skikking arr2DSoil te stoor.
Kode is voorsien om die volgende te doen:
• Maak die 'rich edit'-komponent redQ4_1 skoon.
• Roep die Display-metode om die data in die arr2DSoil
tweedimensionele skikking in die 'rich edit'-komponent redQ4_1
af te voer.
Voorbeeld van afvoer:
(8)
Kopiereg voorbehou Blaai om asseblief
Inligtingstegnologie/V1 29 DBE/November 2025
NSS Vertroulik
4.1.2 Knoppie [4.1.2 - Validate]
Dit is vir die SustainaFarm Collective belangrik dat die som van die
Clay-, Sand- en Silt-waardes vir elke hektaar aan die waarde van
100 gelyk is.
Kode is voorsien om die redQ4_1-komponent skoon te maak en die
opskrif 'Hectares adjusted' te vertoon.
Skryf kode om die volgende te doen:
• Bereken die som van die Clay-, Sand- en Silt-waardes vir elke
hektaar.
• Indien die som van enige hektaar nie die waarde van 100 het as
dit opgetel word nie, doen die volgende:
o Pas die Clay-, Sand- en Silt-waardes vir daardie hektaar in
dieselfde verhouding aan om seker te maak dat die som van
die drie waardes, as dit opgetel word, 100 is.
o Vertoon die hektaarnommer in die redQ4_1-komponent in
die formaat:
Hectare: <hectare number>
LET WEL: Neem aan dat die totaal vir elke hektaar nie meer as
100 sal wees nie.
Kode is voorsien om die volgende te doen:
• Vertoon die opskrif 'Updated data:'.
• Roep die Display-metode om die data van die arr2DSoil
tweedimensionele skikking in die 'rich edit'-komponent redQ4_1
af te voer.
Voorbeeld van afvoer:
(9)
Kopiereg voorbehou Blaai om asseblief
Inligtingstegnologie/V1 30 DBE/November 2025
NSS Vertroulik
4.2 Knoppie [4.2 - Nutrient markers]
Die SustainaFarm Collective doen navorsing oor die groeipotensiaal van
gewasse deur unieke voedingstofmerkers ('nutrient markers') te gebruik.
Voedingstofmerkers is spesiale getalle waar die som van die fakulteite
('factorials') van hulle syfers aan die getal self gelyk is.
Voorbeeld 1:
Die getal 145 is 'n voedingstofmerker ('nutrient marker') aangesien die som van
die fakulteite ('factorials') van die syfers aan die oorspronklike getal 145 gelyk
is.
1! = 1 x 1 = 1
4! = 4 × 3 × 2 × 1 = 24
5! = 5 × 4 × 3 × 2 × 1 = 120
1 + 24 + 120 = 145
Voorbeeld 2:
Die getal 32 is NIE 'n voedingstofmerker ('nutrient marker') NIE.
3! = 3 x 2 x 1 = 6
2! = 2 × 1 = 2
6 + 2 = 8 ≠ 32
Kode is voorsien om die volgende te doen:
• Maak die memokomponent memQ4_2 skoon.
• Vertoon die onderstreepte opskrif 'Nutrient markers:'.
Skryf kode om die volgende te doen:
• Bepaal al die voedingstofmerkers ('nutrient markers') in die reeks van 1 tot
50 000 (ingesluit).
• Vertoon elke voedingstofmerker ('nutrient marker') in die memokomponent
memQ4_2.
Kopiereg voorbehou Blaai om asseblief
Inligtingstegnologie/V1 31 DBE/November 2025
NSS Vertroulik
Voorbeeld van afvoer:
(13)
• Sleutel jou eksamennommer as kommentaar in die eerste reël van die programlêer
in.
• Stoor jou program.
• Druk die kode indien dit vereis word.
TOTAAL AFDELING D: 30
GROOTTOTAAL: 150
Kopiereg voorbehou
Inligtingstegnologie/V1 1 DBE/November 2025
NSS Vertroulik
INLIGTINGSTEGNOLOGIE V1
DATABASIS-INLIGTING VIR VRAAG 2:
Die ontwerp van die databasistabelle is soos volg:
Tabel: tblFarmOwners
Hierdie tabel bevat die besonderhede van plaaseienaars.
Veldnaam Datatipe Beskrywing
OwnerID (PK) Number Unieke identifiseerder vir die plaaseienaar
FullName Text (20) Volle naam van die plaaseienaar
ContactNumber Text (12) Kontaknommer van die plaaseienaar
Email Text (25) E-posadres van die plaaseienaar
DateOfBirth Date/Time Geboortedatum van die plaaseienaar
Voorbeeld van die eerste nege rekords van die tblFarmOwners-tabel:
Tabel: tblFarms
Hierdie tabel bevat die besonderhede van elke plaas.
Veldnaam Datatipe Beskrywing
FarmID (PK) Number Unieke identifiseerder vir elke plaas
FarmName Text (20) Naam van die plaas
NearestTown Text (20) Die dorp naaste aan die plaas
SizeInHectares Number Grootte van die plaas in hektaar
FarmType Text (10) Tipe plaas (bv. Dairy, Poultry, Mixed)
OwnerID (FK) Number Die eienaar-ID ('owner ID') van die plaaseienaar
Kopiereg voorbehou Blaai om asseblief
Inligtingstegnologie/V1 2 DBE/November 2025
NSS Vertroulik
Voorbeeld van die eerste elf rekords van die tblFarms-tabel:
LET WEL:
• Konneksiekode is voorsien.
• Die databasis word met ꞌn wagwoord beskerm, dus sal jy nie direkte toegang tot die
databasis kan verkry nie.
Die volgende een-tot-baie-verwantskap met referensiële integriteit (ꞌreferential integrityꞌ)
bestaan tussen die twee tabelle in die databasis:
Kopiereg voorbehou
Inligtingstegnologie/V1 DBE/November 2025
NSS Vertroulik
BEPLANNINGSBLADSY 1
Kopiereg voorbehou
Inligtingstegnologie/V1 DBE/November 2025
NSS Vertroulik
BEPLANNINGSBLADSY 2
Kopiereg voorbehou
Inligtingstegnologie/V1 DBE/November 2025
NSS Vertroulik
Eksamenplakker
_______
150
INLIGTINGSTEGNOLOGIE V1 – NOVEMBER 2025
INLIGTINGSBLAD (moet NA AFLOOP VAN die 3 uur-sessie deur die kandidaat ingevul word)
SENTRUMNOMMER: _____________________________________________________
EKSAMENNOMMER: _____________________________________________________
WERKSTASIENOMMER: __________________________________________________
Weergawe van Delphi wat tydens die INLIGTINGSTEGNOLOGIE NSS NOV. 2025-eksamen gebruik is:
Maak ꞌn kruisie Ander:
Delphi Delphi Delphi Delphi Delphi Delphi (Spesifiseer)
in die toepaslike
2010 XE 10.3 Community 11 12 ________
blokkie (X)
NAAM VAN LÊERGIDS (ꞌFOLDERꞌ): _________________________________________
Kandidaat moet afmerk as die lêernaam (lêername) wat vir elke antwoord gebruik is, gestoor is
en/of 'n poging aangewend is.
Vraag- Gestoor Gepoog Maksimum Punt Nasiener
Lêernaam
nommer () () Punt Toegeken se Kode
Question1_P.
1 dproj 40
Question2_P.
2 dproj 40
Beehive_U. 22
pas
3
Question3_P. 18
dproj
Question4_P.
4 dproj 30
TOTAAL 150
Kommentaar: (slegs vir kantoor/nasiener se gebruik)
______________________________________________________________________
______________________________________________________________________
Kopiereg voorbehou
Study this subject
Recommended for this subject

Question paper
Information Technology Grade 12 P1 NSC November 2023 QP

Question paper
Information Technology Grade 12 P1 NSC November 2022 QP

Question paper
Information Technology Grade 12 P1 NSC November 2021 QP

Question paper
Information Technology Grade 12 P1 NSC November 2020 QP

Question paper
Information Technology Grade 12 P1 NSC November 2019 QP

Question paper
Information Technology Grade 12 P1 NSC November 2017 QP
More from Grade 12 Information Technology

Memorandum
Information Technology Grade 12 P1 NSC June 2025 Memo (Eng)

Memorandum
Information Technology Grade 12 P1 2024 Memo (Eng)

Memorandum
Information Technology Grade 12 P2 2024 Memo (Eng)

Memorandum
Information Technology Grade 12 P1 2023 Memo (Afr)

Memorandum
Information Technology Grade 12 P2 2023 Memo (Afr)

Memorandum