# Information Technology Grade 12 P1 2020 Memo (Afr)

> Grade 12 Information Technology Paper 1 memorandum from the Eastern Cape Mock Exam 2020 (Afrikaans), 14 pages. Read online or download the free PDF.

- Page: https://www.hlayiso.com/library/information-technology-p1-gr-12-memo-sept2020-afrikaans/95e20b24-565f-49dc-97cd-0a2dbcfad054
- Updated: 2026-09-27
- Subject: Information Technology
- Grade: Grade 12
- Language: Afrikaans
- Document type: Memorandum
- Year: 2020
- Exam period: Eastern Cape Mock Exam
- Paper: 1
- Curriculum: CAPS
- Pages: 14

Breadcrumbs: [Home](https://www.hlayiso.com/) › [Library](https://www.hlayiso.com/library) › [Grade 12](https://www.hlayiso.com/library/grade-12) › [Information Technology](https://www.hlayiso.com/library/grade-12/information-technology) › [Information Technology Grade 12 P1 2020 Memo (Afr)](https://www.hlayiso.com/library/information-technology-p1-gr-12-memo-sept2020-afrikaans/95e20b24-565f-49dc-97cd-0a2dbcfad054)

## About this document

Information Technology · Grade 12 · Eastern Cape Mock Exam · 2020 · Afrikaans. Memorandum, 14 pages. Read online or download the PDF.

Read it free online on the page above; download the PDF from there.

## Matching paper and memo

- [INFORMATION TECHNOLOGY P1 GR 12 QP SEPT2020 Afrikaans](https://www.hlayiso.com/library/information-technology-p1-gr-12-qp-sept2020-afrikaans/42a51949-5c87-4fbf-8055-7cc9e3aaa612) — QP · 2020 · Afr
- [INFORMATION TECHNOLOGY P1 GR 12 QP SEPT2020 Afrikaans .docx](https://www.hlayiso.com/library/information-technology-p1-gr-12-qp-sept2020-afrikaans-docx/bcca23dc-b552-4601-9d0b-00117508a14e) — QP · 2020 · Afr

## Document text

Text extracted from the PDF. Layout, diagrams and tables may not survive extraction.

### Page 1

Downloaded from hlayiso.com

                           NASIONALE
                       SENIOR SERTIFIKAAT

                              GRAAD 12

                        SEPTEMBER 2020

                INLIGTINGSTEGNOLOGIE V1
                      NASIENRIGLYN

PUNTE:   150

                 Hierdie nasienriglyn bestaan uit 14 bladsye.

### Page 2

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 ŉ 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

### Page 3

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 ŉ 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

### Page 4

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 ŉ waarde te
          gee 
 2.1.4    Funksie tostring: string;
          Korrekte metode – funksie 
             String datatipe 
          Skep ŉ 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

### Page 5

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

### Page 6

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 ŉ ‘real’ getal 
                               3.2 Subtotaal: Kode-konstruktor   15

                                             TOTAAL VRAAG 3      40

Kopiereg voorbehou                                                    Blaai om asseblief

### Page 7

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 ŉ 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 ŉ string buite die lus
 4.3       Kombinasieblokkie-opsie [Persentasie van
           HERWONNE afval]
                                                                          3
           Herwonne/totaal x 100 
           afgerond 
           Vertoon in paneel as ŉ 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 
               ŉ string wat uit arrtipes skikking  en nuwe totaal
                skikking bestaan  omgeskakel na string 

           closefile stelling

                                               TOTAAL VRAAG 4            30

Kopiereg voorbehou                                                            Blaai om asseblief

### Page 8

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

### Page 9

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

### Page 10

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

### Page 11

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

### Page 12

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

### Page 13

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

### Page 14

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

## Related documents

- [IT P1 GR12 MEMO SEPT2018 Afrikaans](https://www.hlayiso.com/library/it-p1-gr12-memo-sept2018-afrikaans/55409ee4-7e45-46a3-88eb-9dbd26e43037) — Information Technology · Memo · 2018 · Afr
- [IT P2 GR12 QP SEPT2020 Afrikaans](https://www.hlayiso.com/library/it-p2-gr12-qp-sept2020-afrikaans/bce79554-ac5b-49c0-8c46-7d49632baa53) — Information Technology · QP · 2020 · Afr
- [IT P1 GR12 QP SEPT 2022 Afrikaans](https://www.hlayiso.com/library/it-p1-gr12-qp-sept-2022-afrikaans/f864e03f-add3-41d0-9b55-3110e7180172) — Information Technology · QP · 2022 · Afr
- [IT P1 GR12 QP SEPT2018 Afrikaans](https://www.hlayiso.com/library/it-p1-gr12-qp-sept2018-afrikaans/8a712e4b-3935-4095-aa63-c0cbea50a871) — Information Technology · QP · 2018 · Afr
- [INFO TECH P2 GR12 MEMO SEPT2017 Afrikaans](https://www.hlayiso.com/library/info-tech-p2-gr12-memo-sept2017-afrikaans/134bed6e-9b93-42cb-bc7b-bdb89503c63d) — Information Technology · Memo · 2017 · Afr
- [IT P1 Nov 2020 Afr REWRITE (NO MEMO)](https://www.hlayiso.com/library/it-p1-nov-2020-afr-rewrite-no-memo/50e776f8-b245-4554-9243-5cf350cf10d2) — Information Technology · Memo · 2020 · Afr

## More from Grade 12 Information Technology

- [IT-P2-GR12 QP-Afr-SEP-2025 watermark](https://www.hlayiso.com/library/it-p2-gr12-qp-afr-sep-2025-watermark/569cc299-ae7c-4635-9514-cf03f9242ebc) — QP · 2025 · Afr
- [IT P2 QP GR12 SEPT 2024 AFR](https://www.hlayiso.com/library/it-p2-qp-gr12-sept-2024-afr/9016098b-e233-49f4-b1dc-f0838363c6af) — QP · 2024 · Afr
- [Information Technology P1 Nov 2024 Afr](https://www.hlayiso.com/library/information-technology-p1-nov-2024-afr/f4b19c44-77ce-482a-9f85-438813c25f87) — QP · 2024 · Afr
- [Information Technology P2 Nov 2024 Eng](https://www.hlayiso.com/library/information-technology-p2-nov-2024-eng/3afa20d1-1c0f-4969-8a56-d690e9b24d70) — QP · 2024 · Eng
- [Information Technology P1 May-June 2023 Eng](https://www.hlayiso.com/library/information-technology-p1-may-june-2023-eng/896eee2c-884c-4527-97e2-ed0759edd97d) — QP · 2023 · Eng
- [Information Technology P1 Nov 2023 Eng](https://www.hlayiso.com/library/information-technology-p1-nov-2023-eng/8ae9d306-1975-4759-ad2b-96483154bd10) — QP · 2023 · Eng

## Collection

- [Grade 12 past papers](https://www.hlayiso.com/grade-12/past-papers)

---

Hlayiso: free CAPS and IEB past papers, memos, notes and study guides for South African learners. When citing, link the page URL above, not a PDF or /api/ URL.
