Downloaded from hlayiso.com
NASIONALE
SENIOR SERTIFIKAAT
GRAAD 12
SEPTEMBER 2020
INLIGTINGSTEGNOLOGIE V1
NASIENRIGLYN
PUNTE: 150
Hierdie nasienriglyn bestaan uit 14 bladsye.
You're offline
Skip to contentQuestion paper 











View all




_hlayiso.com_--7454979b-cba2-4b39-a884-69e6b1c0f5c6/v1-3f9dc1675d92ae7768e5/card.webp)
INFORMATION TECHNOLOGY P1 GR 12 QP SEPT2020 Afrikaans hlayiso.com .docx hlayiso.com
Information Technology · Grade 12 · Eastern Cape Mock Exam · 2020 · Afrikaans. Question paper, 14 pages. Read online or download the PDF.
- Subject
- Information Technology
- Grade
- Grade 12
- Language
- Afrikaans
- Document type
- Question paper
- Year
- 2020
- Exam period
- Eastern Cape Mock Exam
- Paper
- 1
- Pages
- 14
- File size
- 220.1 KB
Loading document…
Loading document…
1 of 14
Document textSearch extracted text and jump to a page.
Downloaded from hlayiso.com
2 INLIGTINGSTEGNOLOGIE V1 (EC/SEPTEMBER 2020)
NAAM VAN LEERDER:
TOTAAL TOTAAL TOTAAL TOTAAL
TOTAAL
VRAAG 1: VRAAG 2: VRAAG 3: VRAAG 4:
/40 /40 /40 /30 /150
MAKS. PUNTE
VRAAG 1: ALGEMENE PROGRAMMERINGSVAARDIGHEDE PUNTE BEHAAL
1.1 Knoppie [1.1 Vertoon Klubnaam]
Kry naam van redigeerblokkie
Voeg stelseldatum (omgeskakel na string) aan einde van
naam 6
Vertoon naam in paneel
Verander fontgrootte van paneel na 24
Verander die fontstyl van paneel na vetgedruk
1.2 Knoppie [1.2 Prosesseer]
Kry gewig as ʼn syfer
gedeel deur 1000
verwyder desimale van gewig (trunc of enige ander metode)
gebruik globale veranderlikes
16
inisialiseer die globale veranderlikes
Gebruik case of IF
Vermenigvuldig korrekte bedrag per kategorie
Tel by totale
Vertoon bedrae in korrekte panele
Vir al drie afvalprodukte
Geformateer as geldeenheid 2 desimale plekke
Kopiereg voorbehou Blaai om asseblief
Downloaded from hlayiso.com
(EC/SEPTEMBER 2020) INLIGTINGSTEGNOLOGIE V1 3
1.3 Knoppie [1.3 Toets vir skrikkeljaar]
Kry die jaar van redigeerblokkie verander na integer
As (if) jaar mod 400 = 0
Vertoon skrikkeljaar in afvoerkomponent
else
As (if) jaar mod 100 = 0
Vertoon NIE skrikkeljaar in afvoerkomponent
else
As (if) jaar mod 4 = 0
Vertoon skrikkeljaar in afvoerkomponent
else
Vertoon NIE skrikkeljaar in afvoerkomponent
Alternatiewe oplossing wat ‘Boolean flag’ gebruik: 12
Kry die jaar van redigeerblokkie verander na integer
As (if) jaar mod 400 = 0
Stel Boolse veranderlike na true
else
As (if) jaar mod 100 = 0
Stel Boolse veranderlike na false
else
As (if) jaar mod 4 = 0
Stel Boolse veranderlike na true
As (if) Boolse veranderlike true is
Vertoon skrikkeljaar in afvoerkomponent
else
Vertoon NIE skrikkeljaar in afvoerkomponent
1.4 Knoppie [1.4 Gelukkige letters]
Inisialiseer string
Inisialiseer char
Gebruik ʼn lus 6
Gebruik enige korrekte metode om 2 karakters oor te slaan
Voeg die derde karakter by die string
Vertoon die reël in die richedit buite die lus
TOTAAL VRAAG 1 40
Kopiereg voorbehou Blaai om asseblief
Downloaded from hlayiso.com
4 INLIGTINGSTEGNOLOGIE V1 (EC/SEPTEMBER 2020)
MAKS. PUNTE
VRAAG 2: OBJEK-GEORIËNTEERDE PROGRAMMERING
PUNTE BEHAAL
2.1.1 Konstruktor Create:
Korrekte naam met twee string parameters
5
Ken korrekte parameterwaardes toe aan fnaam en
fleier
Maak fbome en fassistente 0
2.1.2 Funksie BerekenKoste : real
Korrekte metode – funksie
Real datatype
6
Bereken:
fbome x 2 + 250 + fassistente x 100
‘Return’ result
2.1.3 Prosedure TelBy;
Korrekte metode – prosedure
Twee integer parameters
7
Voeg waardes by fbome en fassistente
Roep BerekenKoste om ffondse attribuut ʼn waarde te
gee
2.1.4 Funksie tostring: string;
Korrekte metode – funksie
String datatipe
Skep ʼn string
Korrekte attribute
8
Verander fassistente en fbome na string
Verander ffondse na geldeenheid en twee desimale
plekke
Korrekte gebruik van #13
‘Return’ die string
2.1 Subtotaal: Objekklas 26
2.2.1 Knoppie [V2.2.1]
Instansieer die objek
Objeknaam = tcountry.create
Met twee string parameters 6
In korrekte volgorde
Laai die prentjie in component
Maak die paneel pnlQ2 sigbaar
2.2.2 Kry waardes van twee spinedits
Gebruik albei waardes as parameters en die objek om
die prosedure TelBy te roep 8
Vertoon in die label gebruik die objeknaam en tostring
funksie
2.2 Subtotaal: Vormklas 14
TOTAAL VRAAG 2 40
Kopiereg voorbehou Blaai om asseblief
Downloaded from hlayiso.com
(EC/SEPTEMBER 2020) INLIGTINGSTEGNOLOGIE V1 5
MAKS. PUNTE
VRAAG 3: DATABASISPROGRAMMERING
PUNTE BEHAAL
3.1.1 Knoppie: [3.1.1]
SQL: select TipeMateriaal from Materiaal order by TipeMateriaal
DESC
Konsepte: 4
SELECT korrekte veld
FROM korrekte tabel
ORDER BY korrekte veld DESC
3.1.2 Knoppie: [3.1.2]
SQL: Select TipeMateriaal from Materiaal where TipeMateriaal
like ' + quotedstr('%' + SLINE + '%')
Konsepte:
SELECT korrekte veld 5
FROM korrekte tabel
WHERE materialtype LIKE
Quoted string (sline)
‘Wildcards’ (%) in korrekte plekke
3.1.3 Knoppie: [3.1.3]
SQL: Select DatumVerwerk, TipeMateriaal from Materiaal where
Month(DatumVerwerk) = 10
Konsepte:
5
SELECT twee korrekte velde
FROM korrekte tabel
WHERE MONTH (datumverwerk)
Gelyk is aan 10
3.1.4 Knoppie: [3.1.4]
SQL: update Verwerk set Werknemers = Werknemers +
Werknemers*10/100
Konsepte:
UPDATE Verwerk 4
Set Werknemers =
Werknemers + Werknemers x 10%
(aanvaar: werknemers x 1.1 of werknemers x
110/100)
3.1.5 Knoppie: [3.1.5]
SQL: Select sum(Hoeveelheid) As Totale_Hoeveelhede,
VerwerkMetode from Materiaal, Verwerk where
Materiaal.VerwerkKode = Verwerk.VerwerkKode group by
VerwerkMetode
Konsepte:
Select sum (Hoeveelheid) 7
AS Totale_Hoeveelhede
Verwerkmetode
FROM Materiaal, Verwerk
Where om twee tabelle te verbind
Group by Verwerkmetode
3.1 Subtotaal: SQL 25
Kopiereg voorbehou Blaai om asseblief
Downloaded from hlayiso.com
6 INLIGTINGSTEGNOLOGIE V1 (EC/SEPTEMBER 2020)
3.2.1 Knoppie: [3.2.1]
Gaan na eerste rekord van tblmateriaal
‘Loop while not end of table’
If VerwerkKode = 6
7
dan tblmateriaal.edit
Stel KweekhuisFaktor = 2
tblmateriaal.post
Gaan na volgende rekord voor einde van lus
3.2.2 Knoppie: [3.2.2]
Eerste rekord van tblmateriaal
‘Loop while not end of table’
‘running’ Totaal van kweekhuisFaktor x
hoeveelheid
8
Gaan na volgende rekord voor einde van lus
Vertoon totaal aan die einde van die teks in die
redigeerknoppie
Omgeskakel na ʼn ‘real’ getal
3.2 Subtotaal: Kode-konstruktor 15
TOTAAL VRAAG 3 40
Kopiereg voorbehou Blaai om asseblief
Downloaded from hlayiso.com
(EC/SEPTEMBER 2020) INLIGTINGSTEGNOLOGIE V1 7
MAKS. PUNTE
VRAAG 4: PROBLEEMOPLOSSING
PUNTE BEHAAL
4.1 Kombinasieblokkie-opsie [Totale gewig van AL
die afval]
Gebruik case of geneste IF vir al die opsies
4
Lus wat icount gebruik
Tel totale by gewigte in skikking
Vertoon in paneel as ʼn string buite die lus
4.2 Kombinasieblokkie-opsie [Totale gewig van
HERWONNE afval]
Inisialiseer totaal veranderlike
5
Lus wat icount gebruik
If arrdata ‘Herwonne’ bevat
Dan voeg totaal by gewig in skikking
Vertoon in paneel as ʼn string buite die lus
4.3 Kombinasieblokkie-opsie [Persentasie van
HERWONNE afval]
3
Herwonne/totaal x 100
afgerond
Vertoon in paneel as ʼn string
4.4 Kombinasieblokkie-opsie [TOTALE gewig van
ELKE afvalproduk]
Inisialiseer lokale skikking vir totale met 15 indekse
wat na nul gestel is
Lus van 1 tot 15 (vir arrtipes)
Lus van 1 na icount (vir arrdata)
If arrdata (korrekte lusindeks)
Bevat arrtipes inhoud (korrekte lusindeks)
Tel gewig
van arrgewig (korrekte lusindeks) 18
by skikking vir totale (korrekte lusindeks)
assignfile vir verslag.txt
rewrite stelling
lus van 1 na 15
skryf na tekslêer
ʼn string wat uit arrtipes skikking en nuwe totaal
skikking bestaan omgeskakel na string
closefile stelling
TOTAAL VRAAG 4 30
Kopiereg voorbehou Blaai om asseblief
Downloaded from hlayiso.com
8 INLIGTINGSTEGNOLOGIE V1 (EC/SEPTEMBER 2020)
VOORGESTELDE OPLOSSINGS
VRAAG 1
var
frmQuestion1: TfrmQuestion1;
rcountpaper, rcountplastic, rcountglass : real;
implementation
procedure TfrmQuestion1.btnQ1_1Click(Sender: TObject);
begin
pnlclub.Caption := edtclub.Text + ' - ' + datetostr(date);
pnlclub.Font.Size := 24;
pnlclub.font.Style := [fsbold];
end;
procedure TfrmQuestion1.btnQ1_2Click(Sender: TObject);
var
icode, inum : integer;
rweight : real;
begin
rweight := strtofloat(edtweight.Text)/1000;
rweight := trunc(rweight);
case rgpchoice.itemindex of
0 : rcountpaper := rcountpaper + rweight;
1 : rcountplastic := rcountplastic + rweight;
2 : rcountglass := rcountglass + rweight;
end;
pnlpaper.Caption := floattostrf(rcountpaper * 25,ffcurrency,10,2);
pnlplastic.Caption := floattostrf(rcountplastic * 35,ffcurrency,10,2);
pnlglass.Caption := floattostrf(rcountglass * 40,ffcurrency,10,2);
end;
procedure TfrmQuestion1.btnQ1_3Click(Sender: TObject);
var iyear : integer;
begin
iyear := strtoint(edtyear.Text);
if (iyear mod 400 = 0) then showmessage(inttostr(iyear) + ' is a leap year')
else
if iyear mod 100 = 0 then showmessage(inttostr(iyear) + ' is NOT a leap year')
else
if (iyear mod 4 = 0) then showmessage(inttostr(iyear) + ' is a leap year')
else
showmessage(inttostr(iyear) + ' is NOT a leap year');
end;
Kopiereg voorbehou Blaai om asseblief
Downloaded from hlayiso.com
(EC/SEPTEMBER 2020) INLIGTINGSTEGNOLOGIE V1 9
procedure TfrmQuestion1.btnQ1_4Click(Sender: TObject);
var sline : string;
cold : char;
k : integer;
begin
sline := 'A';
cold := 'A';
for k := 1 to 8 do
begin
cold := succ(cold);
cold := succ(cold);
cold := succ(cold);
sline := sline + cold;
end;
reddisplay.Lines.Add(sline);
end;
end.
VRAAG 2
Class Unit:
unit Question2ClassDefinition;
interface
/// provided code do not delete///
uses sysutils, dialogs, math;
type
Tcountry = class
private
fcountry : string;
fleader : string;
ftrees : integer;
ffunds : real;
fassistants : integer;
public
constructor create(sname, sleader : string);
function calculatefunds : real;
procedure addnumbers(itrees, iassist : integer);
function tostring : string;
end;
implementation
constructor Tcountry.create(sname, sleader: string);
begin
fcountry := sname;
fleader := sleader;
ftrees := 0;
fassistants := 0;
end;
Kopiereg voorbehou Blaai om asseblief
Downloaded from hlayiso.com
10 INLIGTINGSTEGNOLOGIE V1 (EC/SEPTEMBER 2020)
function Tcountry.calculatefunds: real;
begin
result := ftrees * 2 + 250 + (fassistants * 100);
end;
procedure Tcountry.addnumbers(itrees, iassist: integer);
begin
ftrees := ftrees + itrees;
fassistants := fassistants + iassist;
ffunds := calculatefunds;
end;
function Tcountry.tostring: string;
begin
result := fcountry + #13 +
fleader + ' and ' + inttostr(fassistants) + ' assistants' + #13 +
inttostr(ftrees) + ' trees' + #13 +
'Funds: ' + floattostrf(ffunds,ffcurrency,10,2);
end;
end.
Main Unit:
var
frmQuestion2: TfrmQuestion2;
objcountry : tcountry;
implementation
{$R *.dfm}
procedure TfrmQuestion2.btnQ2_2_1Click(Sender: TObject);
begin
objcountry := tcountry.create(edtcountry.Text, edtleader.Text);
imgtrees.Picture.LoadFromFile('Trees.jpg');
pnlQ2.Enabled := true;
end;
procedure TfrmQuestion2.btnQ2_2_2Click(Sender: TObject);
var itrees, ivol : integer;
begin
itrees := sedtrees.value;
ivol := sedassistants.Value;
objcountry.addnumbers(itrees, ivol);
lbldisplay.Caption := objcountry.tostring;
end;
Kopiereg voorbehou Blaai om asseblief
Downloaded from hlayiso.com
(EC/SEPTEMBER 2020) INLIGTINGSTEGNOLOGIE V1 11
VRAAG 3
//=====================================================================
// Question 3.1.1
//=====================================================================
procedure TQuestion_3.btnQuestion3_1_1Click(Sender: TObject);
var
sSQL1: String;
begin
sSQL1 := 'select MaterialType from Material order by MaterialType DESC';
// Provided code - do not change
dbCONN.runSQL(sSQL1);
end;
//=====================================================================
// Question 3.1.2
//=====================================================================
procedure TQuestion_3.btnQuestion3_1_2Click(Sender: TObject);
// Provided code - do not change/
var
sline : string;
sSQL2: String;
begin
// Provided code - do not change//////////////////////
sline := inputbox('Enter a Material','','wood');
sSQL2 := 'Select MaterialType from Material where MaterialType like ' + quotedstr('%' +
SLINE + '%');
// Provided code - do not change
dbCONN.runSQL(sSQL2);
end;
//=====================================================================
// Question 3.1.3
//=====================================================================
procedure TQuestion_3.btnQuestion3_1_3Click(Sender: TObject);
// Provided code - do not change
var
sSQL3: String;
begin
sSQL3 := 'Select Datedisposed, MaterialType from Material where Month(DateDisposed) =
10';
// Provided code - do not change
dbCONN.runSQL(sSQL3);
end;
Kopiereg voorbehou Blaai om asseblief
Downloaded from hlayiso.com
12 INLIGTINGSTEGNOLOGIE V1 (EC/SEPTEMBER 2020)
//=====================================================================
// Question 3.1.4
//=====================================================================
procedure TQuestion_3.btnQuestion3_1_4Click(Sender: TObject);
// Provided code - do not change
var
sSQL4: String;
begin
sSQL4 := 'update Disposal set Employees = Employees + Employees*10/100';
// Provided code - do not change
dbCONN.executeSQL(sSQL4,dbgdisposal,dbgmaterials,dbggarbage);
end;
//=====================================================================
// Question 3.1.5
//=====================================================================
procedure TQuestion_3.btnQuestion3_1_5Click(Sender: TObject);
// Provided code - do not change
var
sSQL5: String;
begin
sSQL5 := 'Select sum(Quantity) As Total_Quantities, DisposalMethod from Material,
Disposal where Material.Disposalcode = Disposal.Disposalcode group by DisposalMethod' ;
// Provided code - do not change
dbCONN.runSQL(sSQL5);
end;
//=====================================================================
// Question 3.2.1
//=====================================================================
procedure TQuestion_3.btnQuestion3_2_1Click(Sender: TObject);
begin
/// enter your code below//
tblmaterial.First;
while not tblmaterial.eof do
begin
if tblmaterial['Disposalcode'] = 6 then
begin
tblmaterial.edit;
tblmaterial['Greenhousefactor'] := 2;
tblmaterial.Post;
end;
tblmaterial.Next;
end;
end;
Kopiereg voorbehou Blaai om asseblief
Downloaded from hlayiso.com
(EC/SEPTEMBER 2020) INLIGTINGSTEGNOLOGIE V1 13
//=====================================================================
// Question 3.2.2
//=====================================================================
procedure TQuestion_3.btnQuestion3_2_2Click(Sender: TObject);
var rtotal : real;
begin
/// enter your code below//
tblmaterial.First;
while not tblmaterial.eof do
begin
rtotal := rtotal + tblmaterial['Greenhousefactor'] * tblmaterial['Quantity'];
tblmaterial.Next;
end;
edtdisplay.text := edtdisplay.text + floattostr(rtotal);
end;
Kopiereg voorbehou Blaai om asseblief
Downloaded from hlayiso.com
14 INLIGTINGSTEGNOLOGIE V1 (EC/SEPTEMBER 2020)
VRAAG 4
Const arrtypes : array[1..15] of string =
('Paper','Cardboard','Trash','Timber','Pallets','Rubber','Tyres','Metal','Food','Grass','Trees','Soil
','Rubble','Clay','Computers');
var
frmQuestion4: TfrmQuestion4;
//provided code do not delete///////
arrdata : array[1..100] of string;
arrweights : array[1..100] of integer;
icount : integer;
implementation {$R *.dfm}
procedure TfrmQuestion4.cmbreportChange(Sender: TObject);
var k, x, itotal, irecycled, ipos, ino : integer;
sline,sline1, sline2 : string;
tfile : textfile;
arrtotalweights: array[1..100] of integer;
inodup : integer;
icheck : integer;
bdup : boolean;
begin
//Enter code below:
itotal := 0;
irecycled := 0;
for k := 1 to icount do
begin
itotal := itotal + arrweights[k];
if pos('RECYCLED' , uppercase(arrdata[k])) <> 0 then
irecycled := irecycled + arrweights[k];
end;
case cmbreport.itemindex of
0 : pnloutput.caption := inttostr(itotal);
1 : pnloutput.caption := inttostr(irecycled);
2 : pnloutput.caption := inttostr(round(irecycled/itotal*100));
3 : begin
for k := 1 to 100 do arrtotalweights[k] := 0;
for x := 1 to 15 do
begin
for k := 1 to icount do
begin
if pos(arrtypes[x],arrdata[k]) <> 0 then
inc(arrtotalweights[x], arrweights[k]);
end;
end;
assignfile(tfile, 'report.txt');
rewrite(tfile);
for k := 1 to 15 do
writeln(tfile, arrtypes[k] + ' = ' + inttostr(arrtotalweights[k]));
closefile(tfile);
end;
end; // end of case end;
Kopiereg voorbehou Blaai om asseblief
Recommended for this subject
Published documents with matching subject and grade metadata.

Question paper
IT P2 GR12 QP Afr SEP 2025

Question paper
Information Technology P1 Nov 2024 Afr

Question paper
Information Technology P1 May June 2023 MG Afr hlayiso.com

Question paper
Information Technology P1 May June 2023 MG Eng hlayiso.com

Question paper
Information Technology P1 May June 2023 Eng hlayiso.com

Question paper
Information Technology P2 May June 2023 MG Eng hlayiso.com
Related documents
Matched using subject, grade, language, document type and exam metadata.

Question paper
INFORMATION TECHNOLOGY P1 GR 12 QP SEPT2020 Afrikaans hlayiso.com

Question paper
IT P2 GR12 QP SEPT2020 Afrikaans hlayiso.com

Question paper
IT P1 GR12 QP SEPT 2022 Afrikaans hlayiso.com

Question paper
IT P1 GR12 QP SEPT2018 Afrikaans hlayiso.com

Memorandum
IT P1 MEMO GR12 SEPT2023 Afrikaans hlayiso.com

Memorandum
IT P1 GR12 MEMO SEPT 2022 Afrikaans hlayiso.com
More from Grade 12 Information Technology
Explore more published documents in this catalogue.

Memorandum
LEWENSWETENSKAPPE V1 MEMO GR12 SEPT 2025

Memorandum
IT P2 GR12 MEMO SEPT2023 Afrikaans hlayiso.com

Question paper
Information Technology P1 Nov 2023 MG Eng hlayiso.com

Question paper
Information Technology P1 Nov 2023 Eng hlayiso.com

Question paper
Information Technology P1 May June 2022 MG Eng hlayiso.com
_hlayiso.com_--7454979b-cba2-4b39-a884-69e6b1c0f5c6/v1-3f9dc1675d92ae7768e5/card.webp)
Question paper