Downloaded from hlayiso.com
NASIONALE
SENIOR SERTIFIKAAT
GRAAD 12
INLIGTINGSTEGNOLOGIE V1
NOVEMBER 2016
MEMORANDUM
PUNTE: 150
Hierdie vraestel bestaan uit 32 bladsye.
Kopiereg voorbehou Blaai om asseblief
Skip to contentAll 2016 papers 



_hlayiso.com_--50e776f8-b245-4554-9243-5cf350cf10d2/v1-50c5c39841428639bad4/card.webp)

View all





Information Technology Grade 12 P1 NSC November 2016 Memo
Grade 12 Information Technology Paper 1 memorandum from the NSC November Exam 2016 (Afrikaans), 32 pages. Read online or download the free PDF.
Information Technology · Grade 12 · NSC November Exam · 2016. Memorandum, 32 pages. Read online or download the PDF.
- Subject
- Information Technology
- Grade
- Grade 12
- Document type
- Memorandum
- Year
- 2016
- Exam period
- NSC November Exam
- Paper
- 1
- Curriculum
- CAPS
- Pages
- 32
- File size
- 458.3 KB
Free to read online, no sign-up needed
Loading document…
Loading document…
1 of 32
This exam
NSC November Exam 2016
Questions in this paper
Document textSearch extracted text and jump to a page.
Downloaded from hlayiso.com
Inligtingstegnologie/V1 2 DBE/November 2016
NSS – Memorandum
ALGEMENE INLIGTING:
• Hierdie nasienriglyne moet as die basis vir die nasiensessie gebruik word. Dit is
voorberei om deur nasieners gebruik te word. Daar word na alle nasieners
verwag om 'n deeglike standaardiseringsvergadering by te woon om seker te
maak dat die riglyne konsekwent geïnterpreteer en tydens die nasien van die
kandidate se werk toegepas word.
• Let op dat leerders wat 'n alternatiewe korrekte oplossing as wat as voorbeeld
van 'n oplossing in die nasienriglyne gegee word verskaf, volle krediet vir die
relevante oplossing moet kry tensy die spesifieke instruksies in die vraestel nie
gevolg is nie of die vereistes van die vraag nie nagekom is nie.
• Bylaag A, B en C (bladsy 3-10) sluit die nasienrubriek vir elke om te gebruik vir
enigeen van die twee programmeringstale in.
• Bylaag D, E en F (bladsy 11-19) bevat voorbeelde in programmeringskode in
Java van oplossings vir VRAAG 1 tot VRAAG 3.
• Bylaag G, H en I (bladsy 20-32) bevat voorbeelde in programmeringskode in
Delphi van oplossings vir VRAAG 1 tot VRAAG 3.
• Kopieë van Bylaag A, B en C (bladsy 3-10) moet vir elke leerder gemaak word
en tydens die nasiensessie voltooi word.
Kopiereg voorbehou Blaai om asseblief
Downloaded from hlayiso.com
Inligtingstegnologie/V1 3 DBE/November 2016
NSS – Memorandum
BYLAAG A:
AFDELING A:
VRAAG 1: NASIENRUBRIEK - ALGEMENE PROGRAMMERINGSVAARDIGHEDE
SENTRUMNOMMER: EKSAMENNOMMER:
MAKS. LEERDER-
VRAAG BESKRYWING
PUNTE PUNT
'n Leerder moet slegs een keer gepenaliseer word indien
dieselfde fout herhaaldelik voorkom.
1.1 Onttrek lengte uit teksblokkie, skakel om na reële getal
Onttrek breedte uit teksblokkie en skakel om na getal
Onttrek hoogte uit teksblokkie en skakel om na getal
Bereken volume deur van die formule gebruik te maak: 5
Volume = lengte * breedte * hoogte
Vertoon die volume in die teksblokkie
1.2 Knoppie – [Vraag 1_2]
Volume = volume * 1000
as volume <=500
Bereken koste deur formule te gebruik
Koste = Volume * 0.25
anders
as volume <= 800
Bereken koste deur formule te gebruik
Koste = 500 * 0.25 + (volume - 500) * 0.35
anders
Bereken koste deur formule te gebruik 9
Koste = 500 * 0.25 +300* 0.35 + (volume - 800)* 0.45
Vertoon die koste in die teksblokkie
Konsepte:
• 2 punte: As volume <= 500 en berekening
• 3 punte: As volume meer as 500 is en kleiner of = 800
en berekening
• 1 punt: anders
• 2 punte: as volume > 800 en berekening
• 1 punt: vertoon
Kopiereg voorbehou Blaai om asseblief
Downloaded from hlayiso.com
Inligtingstegnologie/V1 4 DBE/November 2016
NSS – Memorandum
1.3 Knoppie - [Vraag 1_3]
Kry die leeftyd in maande uit die teksblokkie as 'n getal
Bereken die getal maande deur mod of enige ander metode
maande = leeftyd modulus 12
6
Bereken die getal jaar deur die korrekte formule te gebruik
jare = leeftyd deel deur 12 (verwyder die waarde na die
desimale punt)
Vertoon jare en maande
1.4 Knoppie - [Vraag 1_4]
Onttrek opstellingskoste uit teksblokkie, skakel om na getal
Onttrek die inkomste van eerste jaar uit teksblokkie, skakel om
na getal
Vertoon opskrifte in afvoerarea
Inisialiseer Jaarnommer-veranderlike na 1
Gebruik lus om oprigKoste te toets > 0
oprigKoste = oprigKoste – jaarlikse inkomste
as oprigKoste > 0
vertoon jaarNommer, jaarlikse inkomste, oprigKoste
anders
vertoon jaarNommer, jaarlikse inkomste, “Afbetaal”
Vermeerder jaarNommer met 1
Vermeerder met 10%jaarlikse inkomste
Alle geldwaardes moet na geldeenheid geformatteer wees
met twee desimale plekke 14
Alternatiewe oplossing:
Onttrek opstellingskoste uit teksblokkie, skakel om na getal
(1 punt)
Onttrek die inkomste van eerste jaar uit teksblokkie, skakel om
na getal (1 punt)
Vertoon opskrifte in afvoerarea (1 punt)
Inisialiseer Jaarnommer-veranderlike na 1 (1 punt)
Gebruik lus om oprigKoste te toets > inkomste (2 punt)
oprigKoste = oprigKoste – jaarlikse inkomste (1 punt)
as oprigKoste > inkomste (1 punt)
vertoon jaarNommer, jaarlikse inkomste, oprigKoste
(1 punt)
Vermeerder jaarNommer met 1 (1 punt)
Vermeerder jaarlikse inkomste (1 punt) met 10% (1 punt)
vertoon jaarNommer, jaarlikse inkomste, “Afbetaal” (1 punt)
Kopiereg voorbehou Blaai om asseblief
Downloaded from hlayiso.com
Inligtingstegnologie/V1 5 DBE/November 2016
NSS – Memorandum
1.5 Knoppie - [Vraag 1_5_1]
Genereer 'n willekeurige waarde vir dobbelsteen 1 in regte
reeks
Genereer 'n willekeurige waarde vir dobbelsteen 2
Vertoon dobbelsteen 1 byskrif en waarde in afvoerarea
Vertoon dobbelsteen 2 byskrif en waarde in afvoerarea
Toets of getalle vir dobbelsteen 1 en 2 opeenvolgend is
8
Toets as dobbelsteen 1 – dobbelsteen 2 = 1
Toets OF as dobbelsteen 2 – dobbelsteen 1 = 1
Alternatiewe oplossing:
As abs(dobbelsteen1 – dobbelsteen2) = 1 (2 punte)
Maak radioknoppies/radiogroep aktief
Maak Vraag 1_5_2-knoppie aktief
Knoppie - [Vraag 1_5_2]
Gebruik 'n dialoogblokkie om die kaartjienommer in te sleutel
Verkry die stelseldatum
Selekteer die opsie van die radio button
8
Stel die verwysingsnommer saam deur:
die kaartjienommer en datum
die eerste twee letters van die kursus in hoofletters
# in korrekte plekke
Vertoon die verwysingsnommer in die afvoerarea
TOTAAL: 50
Kopiereg voorbehou Blaai om asseblief
Downloaded from hlayiso.com
Inligtingstegnologie/V1 6 DBE/November 2016
NSS – Memorandum
BYLAAG B:
AFDELING B:
VRAAG 2: NASIENRUBRIEK - OBJEK-GEÖRIENTEERDE PROGRAMMERING
SENTRUMNOMMER: EKSAMENNOMMER:
MAKS. LEERDER-
VRAAG BESKRYWING
PUNTE PUNT
2.1.1 Wysingingsmetode vir setDatumVanBesoek:
2
Metode se definisie met datum parameter
Ken die parameterwaarde toe aan die attribuut
2.1.2 vereisToerGids-metode:
Terugstuur-datatipe String
4
Toets of toerGids = true
Stuur terug “Ja” (Regte woord)
anders
Stuur “Nee” terug
2.1.3 isBevestig-metode:
Metode definisie met parameter en boolean terugstuur-
datatipe
5
Toets of dagTotaal + groepGrootte <= 500
Stuur true terug
else
Stuur false terug
2.1.4 berekenBedrag-metode
Metode se definisie met 2 korrekte parameters
Bereken hoeveel leerders gratis toegang het:
aantGratis = groepGrootte gedeel deur 10 om heelgetal
antwoord te kry
7
Bereken koste:
bedrag = (groepGrootte – aantGratis) *kostePerPersoon
Toets of toergids vereis word
bedrag = bedrag + kosteToerGids
Stuur bedrag terug
2.1.5 toString-metode:
Byskrifte elke item op nuwe reël
Al die regte attributes/getMethods 4
Roep metode om toergids te bevestig
Stuur die saamgestelde string terug
Kopiereg voorbehou Blaai om asseblief
Downloaded from hlayiso.com
Inligtingstegnologie/V1 7 DBE/November 2016
NSS – Memorandum
2.2.1 Knoppie - [2.2.1 Instansieer objek]
Verkry naam van skool uit teksblokkie
Verkry die datum uit lysblokkie
Verkry die grootte van die groep uit teksblokkie en skakel om
na heelgetal
As kontroleblokkie afgemerk is
7
Stel die toerGids op true
anders
Stel die toerGids op false
Instansieer objek met korrekte parameters
Vertoon boodskap om aan te dui dat objek geinstasieer is
2.2.2(a) Knoppie – [2.2.2 – Bevestig beskikbaarheid]
bepaalDagTotaal-metode met datum parameter
Stel dagTotaal op 0
Lees en skei inligting in tekslêer
{Delphi: AssignFile, Reset
Java: Skep objek om uit leer te lees}
Lus deur die lêer 12
Lees 'n reël op 'n slag
Vind die posisie van die datum
Onttrek die datum van besoek uit die reël
Verkry die grootte van die groep uit die reël
Toets of datum uit reël = datum ontvang as parameter
Vermeerder dagTotaal met groepGrootte
CloseFile(Tekslêer);
Stuur die finale dagTotaal terug
Kopiereg voorbehou Blaai om asseblief
Downloaded from hlayiso.com
Inligtingstegnologie/V1 8 DBE/November 2016
NSS – Memorandum
2.2.2(b) Maak gebruik van die bepaalDagTotaal-metode om die
dagTotaal waarde te verkry
Stuur die dagTotaal as argument na die isBevestig-metode
van die objekklas
Toets of die isBevestig-metode true terugstuur
Roep die berekenBedrag-metode
deur 2 konstante waardes as argumente te stuur
om bedrag te bereken
Vertoon die string wat deur die toString-metode
teruggestuur is en die bedrag wat deur die
berekenBedrag-metode teruggestuur is 16
Anders
Vertoon 'n boodskap wat geen beskikbaarheid aandui
Vertoon die paneel met die naam pnlBeskikbaarheid
Lus deur die lysblokkie
Onttrek datum uit die lysblokkie
Roep bepaalDagTotaal-metode
Deur datum wat onttrek is as argument te gebruik
Stuur die dagTotaal na die isBevestig-metode
As die isBevestig-metode true terugstuur
Voeg die datum by items in kombinasieblokkie
2.2.3 Knoppie – [2.2.3 – Bevestig nuwe datum]
Toets of daar enige items in die kombinasieblokkie is
Verkry die geselekteerde datum uit die kombinasieblokkie
Roep die setDatumVanBesoek-metode met hierdie datum
as argument
5
Roep die toString-metode en die berekenBedrag-metode
om te vertoon
Anders
Vertoon 'n gepaste boodskap wat aandui dat die aansoek
om op uitstappie te gaan onsuksesvol was
TOTAAL: 62
Kopiereg voorbehou Blaai om asseblief
Downloaded from hlayiso.com
Inligtingstegnologie/V1 9 DBE/November 2016
NSS – Memorandum
BYLAAG C:
AFDELING C:
VRAAG 3: NASIENRUBRIEK - PROBLEEMOPLOSSING
SENTRUMNOMMER: EKSAMENNOMMER:
MAKS. LEERDER-
VRAAG BESKRYWING
PUNTE PUNT
3.1 Knoppie [3.1 – Aktiwiteits-/Fasiliteitskodes vir alle
terminale en rigtings]
Vertoon kolomopskrifte
Buitenste lus om rye te beheer
Voeg terminaal se nommer by reël
Binneste lus om kolomme te beheer
Vind korrekte data-element uit tweeD-skikking
Voeg data by reël 9
Eindig binneste lus
Vertoon die reël in die afvoerarea op 'n nuwe lyn
Eindig buitenste lus
Vertoon in netjiese kolomme
Gebruik 'n datastruktuur of enige ander metode om die
rigtings Noord, Suid, Oos en Wes te vind
3.2 Knoppie
[3.2 – Aktiwiteite/Fasiliteite vanaf 'n terminaal en rigting
wat gekies is]
Vertoon die terminaal se nommer en die rigting in die
afvoerarea
Verkry die kode uit die tweeD-skikking vir hierdie terminaal
se nommer en hierdie rigting
11
Lus deur die lengte van die kode wat onttrek is
Lus deur die arrKodes-skikking
Vergelyk elke letter in die kode teen die waardes
in die arrKodes-skikking is
Vertoon die aktiwiteit uit die arrAktiwiteite-skikking
by dieselfde indeks
as in die arrKodes-skikking
Kopiereg voorbehou Blaai om asseblief
Downloaded from hlayiso.com
Inligtingstegnologie/V1 10 DBE/November 2016
NSS – Memorandum
3.3 Knoppie [3.3 – Toegangsroetes na aktiwiteit/fasiliteit
wat gekies is]
Verkry indeks van die geselekteerde aktiwiteit/fasiliteit in die
kombinasielys
Stel teller op 0
Vertoon opskrif
Vind die kode van die geselekteerde aktiwiteit
Buitenste lus vir rye 10
Binneste lus vir kolomme
Toets of die kode deel is van die kode in die
tweeD-Skikking
Vertoon die terminaal se nommer en die rigting
Vermeerder die teller met 1
Vertoon die byskrif vir die aantal aktiwiteite en waarde die
van die teller
3.4 Knoppie
[3.4 – Instandhouding van aktiwiteit/fasiliteit wat gekies
is]
Verkry indeks van die geselekteerde aktiwiteit/fasiliteit in die
kombinasielys
Buitenste lus vir rye
Binneste lus vir kolomme
8
Toets of die kode van die geselekteerde aktiwiteit deel
is van die kode in die tweeD-skikking
Verwyder die kodeletter uit die tweeD-skikking
By die regte ry en kolom
Vertoon 'n boodskap wat aandui dat die toegangsroetes tot
die geselekteerde aktiwiteit/fasiliteit gesluit is
Roep 'n metode of 'n knoppie en vertoon die opgedateerde
tweeD-skikking met opskrifte
TOTAAL 38
OPSOMMING VAN LEERDER PUNTE:
SENTRUMNOMMER: EKSAMENNOMMER:
AFDELING A AFDELING B AFDELING C
GROOT-
VRAAG 1 VRAAG 2 VRAAG 3
TOTAAL
MAKS.
50 62 38 150
PUNTE
LEERDER PUNTE
Kopiereg voorbehou Blaai om asseblief
Downloaded from hlayiso.com
Inligtingstegnologie/V1 11 DBE/November 2016
NSS – Memorandum
BYLAAG D: OPLOSSING VIR VRAAG 1: JAVA
// Gegewe kode
SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy");
// Globale veranderlikes
DecimalFormat df1 = new DecimalFormat("0.00"); // Vr1.1
DecimalFormat df = new DecimalFormat("R0.00"); // Vr1.2
double volume = 0; // Vr1.1 & Vr1.2
=========================================================================
// Vraag 1.1
=========================================================================
private void btnVraag11ActionPerformed(java.awt.event.ActionEvent evt) {
double lengte, breedte, hoogte;
lengte = Double.parseDouble(txfLengte.getText());
breedte = Double.parseDouble(txfBreedte.getText());
hoogte = Double.parseDouble(txfHoogte.getText());
volume = lengte * breedte * hoogte;
txfVolume.setText("" + df1.format(volume));
}
=========================================================================
// Vraag 1.2
=========================================================================
private void btnVraag12ActionPerformed(java.awt.event.ActionEvent evt) {
double koste = 0;
if (volume <= 500) {
koste = volume * 0.25;
} else if (volume <= 800) {
koste = (500 * 0.25) + (volume - 500) * 0.35;
} else {
koste = (500 * 0.25) + (300 * 0.35) + (volume - 800) * 0.45;
}
txfKoste.setText("" + df.format(koste));
}
=========================================================================
// Vraag 1.3
=========================================================================
private void btnVraag13ActionPerformed(java.awt.event.ActionEvent evt) {
int leeftydInMaande = Integer.parseInt(txfLeeftydInMaande.getText());
int maande = leeftydInMaande % 12;
int jare = (leeftydInMaande - maande) / 12;
txfJareEnMaande.setText(jare + " jaar en " + maande + " maande");
}
=========================================================================
// Vraag 1.4
=========================================================================
private void btnVraag14ActionPerformed(java.awt.event.ActionEvent evt) {
txaVraag14.setText(String.format("%-10s%-14s%-15s\n",
"Jaar", "Inkomste", "Balans"));
double oprigKoste = Double.parseDouble(txfOprigKoste.getText());
double jaarInkomste = Double.parseDouble(txfInkomsteJaar1.getText());
int jaarNommer = 1;
while (oprigKoste > 0) {
oprigKoste = oprigKoste - jaarInkomste;
if (oprigKoste > 0) {
txaVraag14.append(String.format("%-10sR%-13.2fR%-13.2f\n",
jaarNommer, jaarInkomste, oprigKoste));
Kopiereg voorbehou Blaai om asseblief
Downloaded from hlayiso.com
Inligtingstegnologie/V1 12 DBE/November 2016
NSS – Memorandum
}
else {
txaVraag14.append(String.format("%-10sR%-13.2f%-15s\n",
jaarNommer, jaarInkomste, "Afbetaal"));
}
jaarNommer++;
jaarInkomste = jaarInkomste * 1.1;
}
}
=========================================================================
// Vraag 1.5.1
=========================================================================
private void btnVraag151ActionPerformed(java.awt.event.ActionEvent evt) {
int dobbel1 = (int) (Math.random() * 6) + 1;
int dobbel2 = (int) (Math.random() * 6) + 1;
txaVraag15.setText("Dobbelsteen 1 = " + dobbel1);
txaVraag15.append("\nDobbelsteen 2 = " + dobbel2);
if ((dobbel1 == (dobbel2 + 1)) || (dobbel1 == (dobbel2 - 1))) {
rgbSnorkel.setEnabled(true);
rgbSwem.setEnabled(true);
btnVraag152.setEnabled(true);
}
else{
rgbSnorkel.setEnabled(false);
rgbSwem.setEnabled(false);
btnVraag152.setEnabled(false);
}
}
=========================================================================
// Vraag 1.5.2
=========================================================================
private void btnVraag152ActionPerformed(java.awt.event.ActionEvent evt) {
String kaartjieNom = JOptionPane.showInputDialog("Sleutel jou kaartjie
se nommer in");
Date vandag = new Date();
String datum = sdf.format(vandag);
String verwysingsNom = kaartjieNom +"#"+ datum +"#";
if (rgbSnorkel.isSelected()) {
verwysingsNom = verwysingsNom +
rgbSnorkel.getText().substring(0,2);
}
else{
verwysingsNom = verwysingsNom +rgbSwem.getText().substring(0,2);
}
txaVraag15.append("\nVerwysingsnommer:\n"+verwysingsNom.toUpperCase());
}
Kopiereg voorbehou Blaai om asseblief
Downloaded from hlayiso.com
Inligtingstegnologie/V1 13 DBE/November 2016
NSS – Memorandum
BYLAAG E: OPLOSSING VIR VRAAG 2: JAVA
OPLOSSING VIR VRAAG 2: OBJEKKLAS
public class Uitstappie {
=====================================================================
// Kode wat voorsien is
=====================================================================
private String skoolNaam, besoekDatum;
private int groepGrootte;
private boolean toerGids;
public Uitstappie(String skoolNaam, String besoekDatum, int groepGrootte,
boolean toerGids) {
this.skoolNaam = skoolNaam;
this.besoekDatum = besoekDatum;
this.groepGrootte = groepGrootte;
this.toerGids = toerGids;
}
public String getSkoolNaam() {
return skoolNaam;
}
public String getBesoekDatum() {
return besoekDatum;
}
public int getGroepGrootte() {
return groepGrootte;
}
=====================================================================
// Vraag 2.1.1
=====================================================================
public void setBesoekDatum(String besoekDatum) {
this.besoekDatum = besoekDatum;
}
====================================================================
// Vraag 2.1.2
=====================================================================
public String vereisToerGids(){
if (toerGids){
return "Ja";
}
else{
return "Nee";
}
}
=====================================================================
// Vraag 2.1.3
=====================================================================
public boolean isBevestig(int dagTotaal){
if ((dagTotaal + groepGrootte) <= 500 ) {
return true;
}
else{
return false; }}
Kopiereg voorbehou Blaai om asseblief
Downloaded from hlayiso.com
Inligtingstegnologie/V1 14 DBE/November 2016
NSS – Memorandum
====================================================================
// Vraag 2.1.4
=====================================================================
public double berekenBedrag(double persoonKoste,double toerKoste){
int aantGratis = groepGrootte / 10;
double bedrag = (groepGrootte - aantGratis) * persoonKoste;
if (toerGids) {
bedrag += toerKoste;
}
return bedrag;
}
=====================================================================
// Vraag 2.1.5
=====================================================================
public String toString(){
return "Skool se naam: " + skoolNaam + "\nDatum van besoek: "+
besoekDatum + "\nGetal leerders: " + groepGrootte + "\nToergids:
"+ vereisToerGids();
}
}
Kopiereg voorbehou Blaai om asseblief
Downloaded from hlayiso.com
Inligtingstegnologie/V1 15 DBE/November 2016
NSS – Memorandum
GGK-KLAS: VRAAG2_OPLOSSING
=========================================================================
// Kode wat voorsien is
=========================================================================
public class Vraag2 extends javax.swing.JFrame {
public Vraag2() {
initComponents();
pnlBeskikbaarheid.setVisible(true);
setLocationRelativeTo(this);
}
Uitstappie objUitstappie;
final double kostePerPersoon = 75.00;
final double kosteToerGids = 300.00;
=========================================================================
// Vraag 2.2.1
=========================================================================
private void btnVraag221ActionPerformed(java.awt.event.ActionEvent evt) {
String skool = txfSkoolNaam.getText();
String datum = "" + lstBesoekDatum.getSelectedValue();
int groepGrootte = Integer.parseInt(txfGroepGrootte.getText().trim());
boolean toerGids = false;
if (chkToerGids.isSelected()) {
toerGids = true;
}
objUitstappie = new Uitstappie(skool, datum, groepGrootte, toerGids);
JOptionPane.showMessageDialog(null,"Uitstappie-objek is
geinstansieer.");
pnlBeskikbaarheid.setVisible(false);
}
=========================================================================
// Vraag 2.2.2 (a)
=========================================================================
public int bepaalDagTotaal(String besoekDatum){
int totaal = 0;
try {
Scanner sc = new Scanner (new FileReader("DataV2.txt"));
while (sc.hasNext()) {
String reel = sc.nextLine();
String [] arrInfo = reel.split("#");
String skoolNaam = arrInfo[0];
String datum = arrInfo[1];
int groepGrootte = Integer.parseInt(arrInfo[2]);
if (datum.equalsIgnoreCase(besoekDatum)) {
totaal += groepGrootte;
}//if
}//while
sc.close();
} catch (Exception e) {
JOptionPane.showMessageDialog(null,"Fout:"+e.getMessage());
}
return totaal;
}
Kopiereg voorbehou Blaai om asseblief
Downloaded from hlayiso.com
Inligtingstegnologie/V1 16 DBE/November 2016
NSS – Memorandum
=========================================================================
// Vraag 2.2.2 (b)
=========================================================================
private void btnVraag222ActionPerformed(java.awt.event.ActionEvent evt) {
int totaal = bepaalDagTotaal(objUitstappie.getBesoekDatum());
boolean suksesvol = false;
if (objUitstappie.isBevestig(totaal)) {
JOptionPane.showMessageDialog(null,objUitstappie.toString()+"\nBedrag
betaalbaar: "+df.format(objUitstappie.berekenBedrag(kostePerPersoon,
kosteToerGids)));
suksesvol = true;
}
else{
JOptionPane.showMessageDialog(null,"Daar is nie plek op die datum
wat gekies is nie." );
pnlBeskikbaarheid.setVisible(true);
cmbBeskikbareDatums.removeAllItems();
for (int i = 0; i < 5; i++) {
lstBesoekDatum.setSelectedIndex(i);
String datum = "" + lstBesoekDatum.getSelectedValue();
System.out.println(datum);
totaal = bepaalDagTotaal(datum);
if (objUitstappie.isBevestig(totaal)) {
cmbBeskikbareDatums.addItem("" + datum);
}//if
}//for
}//else
}
=========================================================================
// Vraag 2.2.3
=========================================================================
private void btnVraag223ActionPerformed(java.awt.event.ActionEvent evt) {
if (cmbBeskikbareDatums.getItemCount() >= 0) {
objUitstappie.setBesoekDatum("" +
cmbBeskikbareDatums.getSelectedItem());
JOptionPane.showMessageDialog(null,objUitstappie.toString()+"\nBedrag
betaalbaar: " +
df.format(objUitstappie.berekenBedrag(kostePerPersoon,
kosteToerGids)));
}
else{
JOptionPane.showMessageDialog(null, "Die aansoek van " +
objUitstappie.getSkoolNaam() + " is onsuksesvol.");
}
}
Kopiereg voorbehou Blaai om asseblief
Downloaded from hlayiso.com
Inligtingstegnologie/V1 17 DBE/November 2016
NSS – Memorandum
BYLAAG F: OPLOSSING VIR VRAAG 3: JAVA
//======================================================================
// Kode wat voorsien is
//======================================================================
int terminaal = 0;
int rigting = 0;
char arrKodes[] = {'W',
'A',
'S',
'R',
'X',
'D',
'H',
'P',
'T',
'L'};
String[] arrAktiwiteite = {
"Waterpark",
"Akwarium",
"See",
"Restaurante",
"Inkopies",
"Duik",
"Hulptoonbank",
"Pikkewynpark",
"Haaitenk",
"Dolfynvertonings"
};
String[][] arrAktKodes = {{"DXWAT", "HRDST","STWLP", "RDT"},
{"SWA", "SRXD", "LWXH", "SHA"},
{"WLSR", "AT", "DATX", "HW"}};
private void btnTerminal1ActionPerformed(java.awt.event.ActionEvent evt) {
terminaal = 0;
}
private void btnTerminaal2ActionPerformed(java.awt.event.ActionEvent evt) {
terminaal = 1;
}
private void btnTerminaal3ActionPerformed(java.awt.event.ActionEvent evt) {
terminaal = 2;
}
private void btnNoordActionPerformed(java.awt.event.ActionEvent evt) {
rigting = 0;
}
private void btnSuidActionPerformed(java.awt.event.ActionEvent evt) {
rigting = 1;
}
private void btnOosActionPerformed(java.awt.event.ActionEvent evt) {
rigting = 2;
}
private void btnWesActionPerformed(java.awt.event.ActionEvent evt) {
rigting = 3;
}
Kopiereg voorbehou Blaai om asseblief
Downloaded from hlayiso.com
Inligtingstegnologie/V1 18 DBE/November 2016
NSS – Memorandum
//======================================================================
// Globale veranderlikes
//======================================================================
String[] arrRigtings = {
"Noord",
"Suid",
"Oos",
"Wes"
};
=========================================================================
// Vraag 3.1
=========================================================================
private void btnVraag31ActionPerformed(java.awt.event.ActionEvent evt) {
txaVraag3.append(String.format("%-15s%-10s%-10s%-10s%-10s\n", "",
"Noord", "Suid", "Oos", "Wes"));
for (int iRy = 0; iRy < 3; iRy++) {
txaVraag3.append(String.format("%-15s", "Terminaal" + (iRy + 1)));
for (int iKolom = 0; iKolom < 4; iKolom++) {
txaVraag3.append(String.format("%-10s",
arrAktKodes[iRy][iKolom]));
}
txaVraag3.append("\n");
}
}
=========================================================================
// Vraag 3.2
=========================================================================
private void btnVraag32ActionPerformed(java.awt.event.ActionEvent evt) {
txaVraag3.setText("Terminaal " + (terminaal + 1) + ", " +
arrRigtings[rigting] + "\n");
String kodes = arrAktKodes[terminaal][rigting];
for (int i = 0; i < kodes.length(); i++) {
for (int j = 0; j < arrKodes.length; j++) {
if (kodes.charAt(i) == arrKodes[j]) {
txaVraag3.append(arrAktiwiteite[j] + "\n");
}
}
}
}
=========================================================================
// Vraag 3.3
=========================================================================
private void btnVraag33ActionPerformed(java.awt.event.ActionEvent evt) {
int indeks = cmbVraag3.getSelectedIndex();
int tel = 0;
txaVraag3.setText("Toegangsroetes na " + cmbVraag3.getSelectedItem() +
"\n");
for (int iRy = 0; iRy < 3; iRy++) {
for (int iKolom = 0; iKolom < 4; iKolom++) {
if (arrAktKodes[iRy][iKolom].indexOf(arrKodes[indeks]) >= 0) {
txaVraag3.append("Terminaal " + (iRy + 1) + ", " +
arrRigtings[iKolom] + "\n");
tel++;
}
}
}
txaVraag3.append("\nGetal toegangsroetes: " + tel);
}
Kopiereg voorbehou Blaai om asseblief
Downloaded from hlayiso.com
Inligtingstegnologie/V1 19 DBE/November 2016
NSS – Memorandum
=========================================================================
// Vraag 3.4
=========================================================================
private void btnVraag34ActionPerformed(java.awt.event.ActionEvent evt) {
txaVraag3.setText("Opgedateerde inligting:\n\n");
int indeks = cmbVraag3.getSelectedIndex();
for (int iRy = 0; iRy < 3; iRy++) {
for (int iKolom = 0; iKolom < 4; iKolom++) {
if (arrAktKodes[iRy][iKolom].indexOf(arrKodes[indeks]) >= 0) {
arrAktKodes[iRy][iKolom] =
arrAktKodes[iRy][iKolom].replaceAll(arrKodes[indeks] + "", "");
}
}
}
JOptionPane.showMessageDialog(null, "Die toegangsroetes na " +
arrAktiwiteite[indeks] + " is
gesluit.");
btnVraag31.doClick();
}
Kopiereg voorbehou Blaai om asseblief
Downloaded from hlayiso.com
Inligtingstegnologie/V1 20 DBE/November 2016
NSS – Memorandum
BYLAAG G: OPLOSSING VIR VRAAG 1: DELPHI
=========================================================================
// Kode wat voorsien is
=========================================================================
unit Vraag1_U;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, ComCtrls, Spin, DateUtils;
type
TfrmVraag1 = class(TForm)
Panel1: TPanel;
Panel2: TPanel;
GroupBox1: TGroupBox;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
edtLengte: TEdit;
edtBreedte: TEdit;
edtHoogte: TEdit;
btnVraag11: TButton;
edtVolume: TEdit;
GroupBox2: TGroupBox;
btnVraag12: TButton;
edtKoste: TEdit;
GroupBox3: TGroupBox;
btnVraag13: TButton;
Label4: TLabel;
edtVraag13: TEdit;
GroupBox4: TGroupBox;
btnVraag14: TButton;
redVraag14: TRichEdit;
GroupBox5: TGroupBox;
btnVraag151: TButton;
redVraag15: TRichEdit;
rgpPryse: TRadioGroup;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
edtLeeftyd: TEdit;
lblVolume: TLabel;
Label8: TLabel;
Label9: TLabel;
edtAanvangkoste: TEdit;
edtInkomste: TEdit;
btnVraag152: TButton;
procedure btnVraag11Click(Sender: TObject);
procedure btnVraag12Click(Sender: TObject);
procedure btnVraag13Click(Sender: TObject);
procedure btnVraag14Click(Sender: TObject);
procedure btnVraag151Click(Sender: TObject);
procedure FormActivate(Sender: TObject);
procedure btnVraag152Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
Kopiereg voorbehou Blaai om asseblief
Downloaded from hlayiso.com
Inligtingstegnologie/V1 21 DBE/November 2016
NSS – Memorandum
var
frmVraag1: TfrmVraag1;
//==================================================================
//Globale veranderlike (Vr1.1 & Vr1.2)
//==================================================================
rVolume: real;
implementation
{$R *.dfm}
=========================================================================
// Vraag 1.1
=========================================================================
procedure TfrmVraag1.btnVraag11Click(Sender: TObject);
var
rLengte, rBreedte, rHoogte: real;
begin
rLengte := StrToFloat(edtLengte.Text);
rBreedte := StrToFloat(edtBreedte.Text);
rHoogte := StrToFloat(edtHoogte.Text);
rVolume := rLengte * rBreedte * rHoogte;
edtVolume.Text := FloatToStrF(rVolume, ffFixed, 6,2);
end;
=========================================================================
// Vraag 1.2
=========================================================================
procedure TfrmVraag1.btnVraag12Click(Sender: TObject);
var
rKoste: real;
begin
if rVolume <= 500 then
rKoste := rVolume * 0.25
else if rVolume <= 800 then
rKoste := 500 * 0.25 + (rVolume - 500) * 0.35
else
rKoste := 500 * 0.25 + 300 * 0.35 + (rVolume - 800) * 0.45;
edtKoste.Text := FloatToStrF(rKoste, ffCurrency, 6, 2);
end;
========================================================================
// Vraag 1.3
=========================================================================
procedure TfrmVraag1.btnVraag13Click(Sender: TObject);
var
iLeeftydInMaande, iJare, iMaande: integer;
begin
iLeeftydInMaande := StrToInt(edtLeeftyd.Text);
iMaande := iLeeftydInMaande mod 12;
iJare := (iLeeftydInMaande - iMaande) div 12;
edtVraag13.Text := IntToStr(iJare) + ' jaar en ' + IntToStr(iMaande)
+ ' maande';
end;
Kopiereg voorbehou Blaai om asseblief
Downloaded from hlayiso.com
Inligtingstegnologie/V1 22 DBE/November 2016
NSS – Memorandum
=========================================================================
// Vraag 1.4
=========================================================================
procedure TfrmVraag1.btnVraag14Click(Sender: TObject);
var
rOprigKoste, rJaarInkomste: real;
iJaarNommer: integer;
begin
redVraag14.Paragraph.TabCount := 2;
redVraag14.Paragraph.Tab[0] := 40;
redVraag14.Paragraph.Tab[1] := 120;
redVraag14.Lines.Add('Jaar' + #9 + 'Inkomste' + #9 + 'Balans');
rOprigKoste := StrToFloat(edtAanvangKoste.Text);
iJaarNommer := 1;
rJaarInkomste := StrToFloat(edtInkomste.Text);
while rOprigKoste > 0 do
begin
rOprigKoste := rOprigKoste - rJaarInkomste;
if rOprigKoste > 0 then
redVraag14.Lines.Add(IntToStr(iJaarNommer) + #9 + FloatToStrF
(rJaarInkomste, ffCurrency, 8, 2) + #9 + FloatToStrF
(rOprigKoste, ffCurrency, 8, 2))
else
redVraag14.Lines.Add(IntToStr(iJaarNommer) + #9 + FloatToStrF
(rJaarInkomste, ffCurrency, 8, 2) + #9 + 'Afbetaal');
Inc(iJaarNommer);
rJaarInkomste := rJaarInkomste * 1.1;
end;
end;
=========================================================================
//Vraag 1.5.1
=========================================================================
procedure TfrmVraag1.btnVraag151Click(Sender: TObject);
var
iDobbel1, iDobbel2: integer;
begin
redVraag15.Lines.Clear;
iDobbel1 := random(6) + 1;
iDobbel2 := random(6) + 1;
redVraag15.Lines.Add('Dobbelsteen 1 = ' + IntToStr(iDobbel1));
redVraag15.Lines.Add('Dobbelsteen 2 = ' + IntToStr(iDobbel2));
if ((iDobbel1 = iDobbel2 + 1) OR (iDobbel1 = iDobbel2 - 1)) then
begin
btnVraag152.Enabled := true;
rgpPryse.Enabled := true;
end
else
begin
btnVraag152.Enabled := false;
rgpPryse.Enabled := false;
end;
end;
Kopiereg voorbehou Blaai om asseblief
Downloaded from hlayiso.com
Inligtingstegnologie/V1 23 DBE/November 2016
NSS – Memorandum
=========================================================================
//Vraag 1.5.2
=========================================================================
procedure TfrmVraag1.btnVraag152Click(Sender: TObject);
var
sKaartjieNom, sVerwysNom: String;
dDatum: TDateTime;
begin
sKaartjieNom := inputbox('Toevoer van kaartjienommer', 'Sleutel jou kaartjie
se nommer is', '');
dDatum := Date;
sVerwysNom := sKaartjieNom + '#' + DateToStr(dDatum);
sVerwysNom := sVerwysNom + '#' + Uppercase
(copy(rgpPryse.Items[rgpPryse.ItemIndex], 1, 2));
redVraag15.Lines.Add('Verwysingsnommer: ' + #13 + sVerwysNom);
end;
=========================================================================
//Kode wat voorsien is
=========================================================================
procedure TfrmVraag1.FormActivate(Sender: TObject);
begin
CurrencyString := 'R';
btnVraag152.Enabled := false;
rgpPryse.Enabled := false;
end;
end.
Kopiereg voorbehou Blaai om asseblief
Downloaded from hlayiso.com
Inligtingstegnologie/V1 24 DBE/November 2016
NSS – Memorandum
BYLAAG H: OPLOSSING VIR VRAAG 2: DELPHI
OBJEKKLAS:
unit Uitstappie_U;
interface
uses SysUtils, Math, Messages, Dialogs, DateUtils;
Type
TUitstappie = class(TObject)
private
{ private declarations }
fSkoolNaam, fBesoekDatum: string;
fGroepGrootte: integer;
fToergids: boolean;
public
{ public declarations }
constructor Create(sSkoolNaam:string; sDatum:string; iGroepGrootte:integer;
bToerGids:boolean);
procedure setBesoekDatum(sDatumVanBesoek:string);
function vereisToergids: string;
function isBevestig(iDagTotaal:integer): boolean;
function berekenBedrag(rPersoonKoste,rGidsKoste:real):real;
function toString: string;
function getSkoolNaam:string;
function getGroepGrootte:integer;
function getBesoekDatum: string;
end;
implementation
{ TUitstappie }
//========================================================================
// Kode wat voorsien is vir constructor
//========================================================================
constructor TUitstappie.Create(sSkoolNaam, sDatum: string; iGroepGrootte:
integer;
bToerGids: boolean);
begin
fSkoolNaam := sSkoolNaam;
fBesoekDatum:= sDatum;
fGroepGrootte:= iGroepGrootte;
fToerGids := bToerGids;
end;
=========================================================================
// Vraag 2.1.1
==============================================================================
procedure TUitstappie.setBesoekDatum(sDatumVanBesoek: string);
begin
fBesoekDatum := sDatumVanBesoek;
end;
Kopiereg voorbehou Blaai om asseblief
Downloaded from hlayiso.com
Inligtingstegnologie/V1 25 DBE/November 2016
NSS – Memorandum
=========================================================================
// Vraag 2.1.2
=========================================================================
function TUitstappie.vereisToergids: string;
begin
if fToerGids then
Result := 'Ja'
else
Result := 'Nee';
end;
=========================================================================
// Vraag 2.1.3
=========================================================================
function TUitstappie.isBevestig(iDagTotaal: integer): boolean;
begin
if ((iDagTotaal + fGroepGrootte)<=500) then
Result := true
else
Result := false;
end;
=========================================================================
// Vraag 2.1.4
=========================================================================
function TUitstappie.berekenBedrag(rPersoonKoste,rGidsKoste:real): real;
var
iAantalGratis : integer;
rBedrag : real;
begin
iAantalGratis := fGroepGrootte div 10;
rBedrag := (fGroepGrootte - iAantalGratis) * rPersoonKoste;
if fToerGids then
rBedrag := rBedrag + rGidsKoste;
Result := rBedrag;
end;
=========================================================================
// Vraag 2.1.5
=========================================================================
function TUitstappie.toString: string;
begin
Result := 'Skool se naam: ' + fSkoolNaam + #13 + 'Datum van besoek: '+
fBesoekDatum+#13+'Getal leerders: '+ IntToStr(fGroepGrootte) + #13
+'Toergids: '+ vereisToergids;
end;
=========================================================================
// Kode wat voorsien is
=========================================================================
function TUitstappie.getSkoolNaam: string;
begin
Result := fSkoolNaam;
end;
function TUitstappie.getGroepGrootte: integer;
begin
Result := fGroepGrootte;
end;
function TUitstappie.getBesoekDatum: string;
begin
Result := fBesoekDatum;
end;
end.
Kopiereg voorbehou Blaai om asseblief
Downloaded from hlayiso.com
Inligtingstegnologie/V1 26 DBE/November 2016
NSS – Memorandum
HOOFVORMEENHEID: VRAAG2_U.PAS
unit Vraag2_U;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, StdCtrls, Uitstappie_U, ComCtrls;
type
TfrmVraag2 = class(TForm)
Panel1: TPanel;
GroupBox1: TGroupBox;
edtSkoolnaam: TEdit;
edtGroepGrootte: TEdit;
chbToergids: TCheckBox;
btnVraag221: TButton;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
lstDatums: TListBox;
GroupBox3: TGroupBox;
btnVraag222: TButton;
pnlBeskikbaarheid: TPanel;
cmbBeskikbareDatums: TComboBox;
btnVraag223: TButton;
Label4: TLabel;
Panel2: TPanel;
procedure btnVraag221Click(Sender: TObject);
Function bepaalDagTotaal(sDatumVanBesoek: string): integer;
procedure btnVraag222Click(Sender: TObject);
procedure FormActivate(Sender: TObject);
procedure btnVraag223Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
const
rKostePerPersoon= 75.00;
rToerGids = 300.00;
var
frmVraag2: TfrmVraag2;
objUitstappie: TUitstappie;
implementation
{$R *.dfm}
=========================================================================
// Vraag 2.2.1
==============================================================================
procedure TfrmVraag2.btnVraag221Click(Sender: TObject);
var
sSkoolNaam, sDatum: string;
iGroepGrootte: integer;
bToerGids: boolean;
begin
sSkoolNaam := edtSkoolNaam.Text;
sDatum := lstDatums.Items[lstDatums.ItemIndex];
iGroepGrootte := StrToInt(edtGroepGrootte.Text);
Kopiereg voorbehou Blaai om asseblief
Downloaded from hlayiso.com
Inligtingstegnologie/V1 27 DBE/November 2016
NSS – Memorandum
if chbToerGids.Checked then
bToerGids := true
else
bToerGids := false;
objUitstappie := TUitstappie.Create(sSkoolNaam, sDatum, iGroepGrootte,
bToerGids);
ShowMessage('Uitstappie-objek is instansieer.');
pnlBeskikbaarheid.Hide;
end;
=========================================================================
// Vraag 2.2.2 (a)
==============================================================================
function TfrmVraag2.bepaalDagTotaal(sDatumVanBesoek: string): integer;
var
sSkoolNaam, sDatum: string;
iGroepGrootte, iTotaal: integer;
bToerGids: boolean;
teksLeer: TextFile;
sReel: string;
begin
if not FileExists('DataV2.txt') then
begin
MessageDlg('Leer bestaan nie.', mtError, [mbOk], 0);
Exit;
end;
iTotaal := 0;
AssignFile(teksLeer, 'DataV2.txt');
Reset(teksLeer);
while NOT EOF(teksLeer) do
begin
readln(teksLeer, sReel);
sSkoolNaam := copy(sReel, 1, pos('#', sReel) - 1);
Delete(sReel, 1, pos('#', sReel));
sDatum := copy(sReel, 1, pos('#', sReel) - 1);
Delete(sReel, 1, pos('#', sReel));
iGroepGrootte := StrToInt(sReel);
if sDatum = sDatumVanBesoek then
iTotaal := iTotaal + iGroepGrootte;
end; // while
CloseFile(teksLeer);
Result := iTotaal;
end;
=========================================================================
// Vraag 2.2.2 (b)
==============================================================================
procedure TfrmVraag2.btnVraag222Click(Sender: TObject);
var
I, iTotaal: integer;
sDatum: string;
bSuksesvol: boolean;
begin
bSuksesvol := false;
iTotaal := bepaalDagTotaal(objUitstappie.getBesoekDatum);
if objUitstappie.isBevestig(iTotaal) then
begin
ShowMessage(objUitstappie.toString + #13 + 'Totale bedrag: ' + FloatToStrF
(objUitstappie.berekenBedrag(rKostePerPersoon,rToerGids), ffCurrency,
8, 2));
bSuksesvol := true;
end
Kopiereg voorbehou Blaai om asseblief
Downloaded from hlayiso.com
Inligtingstegnologie/V1 28 DBE/November 2016
NSS – Memorandum
else
begin
ShowMessage('Daar is nie plek op die datum wat gekies is nie.');
cmbBeskikbareDatums.Clear;
pnlBeskikbaarheid.Show;
for I := 0 to 4 do
begin
sDatum := lstDatums.Items[I];
iTotaal := bepaalDagTotaal(sDatum);
if objUitstappie.isBevestig(iTotaal) then
begin
cmbBeskikbareDatums.Items.Add(sDatum);
end;
end;
end;
end;
=========================================================================
// Vraag 2.2.3
==============================================================================
procedure TfrmVraag2.btnVraag223Click(Sender: TObject);
var
sDatum: string;
begin
if cmbBeskikbareDatums.Items.Count > 0 then
begin
objUitstappie.setBesoekDatum
(cmbBeskikbareDatums.Items[cmbBeskikbareDatums.ItemIndex]);
ShowMessage(objUitstappie.toString + #13 + 'Bedrag betaalbaar: ' +
FloatToStrF
(objUitstappie.berekenBedrag(rKostePerPersoon,rToerGids), ffCurrency,
8, 2));
end
else
begin
ShowMessage('Die aansoek van ' + objUitstappie.getSkoolnaam +
' was onsuksesvol.');
end;
end;
=========================================================================
// Kode wat voorsien is
=========================================================================
procedure TfrmVraag2.FormActivate(Sender: TObject);
begin
pnlBeskikbaarheid.Hide;
CurrencyString := 'R';
end;
end.
Kopiereg voorbehou Blaai om asseblief
Downloaded from hlayiso.com
Inligtingstegnologie/V1 29 DBE/November 2016
NSS – Memorandum
BYLAAG I: OPLOSSING VIR VRAAG 3: DELPHI
unit Vraag3_U;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, ExtCtrls, ComCtrls;
type
TfrmVraag3 = class(TForm)
Panel1: TPanel;
GroupBox1: TGroupBox;
btnTerminaal1: TBitBtn;
btnTerminaal2: TBitBtn;
btnTerminaal3: TBitBtn;
GroupBox2: TGroupBox;
btnNoord: TBitBtn;
btnSuid: TBitBtn;
btnOos: TBitBtn;
btnWes: TBitBtn;
GroupBox3: TGroupBox;
btnVraag31: TButton;
btnVraag32: TButton;
btnVraag33: TButton;
btnVraag34: TButton;
redVraag3: TRichEdit;
cmbVraag33: TComboBox;
GroupBox4: TGroupBox;
procedure btnVraag31Click(Sender: TObject);
procedure FormActivate(Sender: TObject);
procedure btnVraag32Click(Sender: TObject);
procedure btnTerminaal1Click(Sender: TObject);
procedure btnTerminaal2Click(Sender: TObject);
procedure btnTerminaal3Click(Sender: TObject);
procedure btnNoordClick(Sender: TObject);
procedure btnSuidClick(Sender: TObject);
procedure btnOosClick(Sender: TObject);
procedure btnWesClick(Sender: TObject);
procedure btnVraag33Click(Sender: TObject);
procedure btnVraag34Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
=========================================================================
// Kode wat voorsien is
=========================================================================
var
frmVraag3: TfrmVraag3;
arrKodes: array [1 .. 10] of char = (
'W',
'A',
'S',
'R',
'X',
'D',
'H',
'P',
'T',
'L'
);
Kopiereg voorbehou Blaai om asseblief
Downloaded from hlayiso.com
Inligtingstegnologie/V1 30 DBE/November 2016
NSS – Memorandum
arrAktiwiteite: array [1 .. 10] of String = (
'Waterpark',
'Akwarium',
'See',
'Restaurante',
'Inkopies',
'Duik',
'Hulptoonbank',
'Pikkewynpark',
'Haaitenk',
'Dolfynvertonings'
);
arrAktKodes: array [1 .. 3, 1 .. 4] of String = (('DXWAT', 'HRDST',
'STWLP', 'RDT'), ('SWA', 'SRXD', 'LWXH', 'SHA'),
('WLSR', 'AT', 'DATX', 'HW'));
iTerminaal: integer = 1;
iRigting: integer = 1;
//==================================================================
// Globale veranderlikes
//==================================================================
arrRigtings: array [1 .. 4] of string = (
'Noord',
'Suid',
'Oos',
'Wes'
);
=========================================================================
// Kode wat voorsien is
=========================================================================
implementation
{$R *.dfm}
procedure TfrmVraag3.btnTerminaal1Click(Sender: TObject);
begin
iTerminaal := 1;
end;
procedure TfrmVraag3.btnTerminaal2Click(Sender: TObject);
begin
iTerminaal := 2;
end;
procedure TfrmVraag3.btnTerminaal3Click(Sender: TObject);
begin
iTerminaal := 3;
end;
procedure TfrmVraag3.btnNoordClick(Sender: TObject);
begin
iRigting := 1;
end;
procedure TfrmVraag3.btnSuidClick(Sender: TObject);
begin
iRigting := 2;
end;
procedure TfrmVraag3.btnOosClick(Sender: TObject);
begin
iRigting := 3;
end;
Kopiereg voorbehou Blaai om asseblief
Downloaded from hlayiso.com
Inligtingstegnologie/V1 31 DBE/November 2016
NSS – Memorandum
procedure TfrmVraag3.btnWesClick(Sender: TObject);
begin
iRigting := 4;
end;
===========================================================================
//Vraag 3.1
===========================================================================
procedure TfrmVraag3.btnVraag31Click(Sender: TObject);
var
iRy, iKolom: integer;
sReel: String;
begin
redVraag3.Lines.Add('' + #9 + 'Noord' + #9 + 'Suid' + #9 +
'Oos' + #9 + 'Wes');
for iRy := 1 to 3 do
begin
sReel := 'Terminaal ' + IntToStr(iRy) + #9;
for iKolom := 1 to 4 do
begin
sReel := sReel + arrAktKodes[iRy, iKolom] + #9;
end;
redVraag3.Lines.Add(sReel);
end;
end;
procedure TfrmVraag3.FormActivate(Sender: TObject);
begin
redVraag3.Paragraph.TabCount := 4;
redVraag3.Paragraph.Tab[0] := 80;
redVraag3.Paragraph.Tab[1] := 130;
redVraag3.Paragraph.Tab[2] := 180;
redVraag3.Paragraph.Tab[3] := 230;
end;
=========================================================================
//Vraag 3.2
=========================================================================
procedure TfrmVraag3.btnVraag32Click(Sender: TObject);
Var
i, j: integer;
sKodes: string;
begin
redVraag3.Clear;
redVraag3.Lines.Add('Terminaal ' + IntToStr(iTerminaal) + ', ' + arrRigtings
[iRigting]);
sKodes := arrAktKodes[iTerminaal, iRigting];
for i := 1 to length(sKodes) do
begin
for j := 1 to length(arrKodes) do
begin
if sKodes[i] = arrKodes[j] then
redVraag3.Lines.Add(arrAktiwiteite[j]);
end;
end;
end;
Kopiereg voorbehou Blaai om asseblief
Downloaded from hlayiso.com
Inligtingstegnologie/V1 32 DBE/November 2016
NSS – Memorandum
=========================================================================
//Vraag 3.3
=========================================================================
procedure TfrmVraag3.btnVraag33Click(Sender: TObject);
var
iRy, iKolom, iTel, iIndeks: integer;
begin
redVraag3.Clear;
iTel := 0;
iIndeks := cmbVraag33.ItemIndex;
redVraag3.Lines.Add('Toegangsroetes na ' +
cmbVraag33.Items[cmbVraag33.ItemIndex]
);
for iRy := 1 to 3 do
for iKolom := 1 to 4 do
if pos(arrKodes[iIndeks + 1], arrAktKodes[iRy, iKolom]) > 0 then
begin
redVraag3.Lines.Add('Terminaal ' + IntToStr(iRy) + ', ' + arrRigtings
[iKolom]);
Inc(iTel);
end;
redVraag3.Lines.Add(#13 + 'Getal toegangsroetes: ' + IntToStr(iTel));
end;
=========================================================================
//Vraag 3.4
=========================================================================
procedure TfrmVraag3.btnVraag34Click(Sender: TObject);
var
iIndeks, iRy, iKolom: integer;
begin
redVraag3.Clear;
redVraag3.Lines.Add('Opgedateerde inligting:');
redVraag3.Lines.Add('');
iIndeks := cmbVraag33.ItemIndex;
for iRy := 1 to 3 do
for iKolom := 1 to 4 do
if pos(arrKodes[iIndeks + 1], arrAktKodes[iRy, iKolom]) > 0 then
begin
Delete(arrAktKodes[iRy, iKolom], pos(arrKodes[iIndeks + 1],
arrAktKodes[iRy, iKolom]), 1);
end;
ShowMessage('Die toegangsroetes na ' + arrAktiwiteite[iIndeks + 1]
+ ' is gesluit.');
btnVraag31.Click;
end;
end.
Kopiereg voorbehou
Study this subject
Recommended for this subject

Question paper
Information Technology Grade 12 P1 NSC November 2016 QP

Question paper
Information Technology Grade 12 P1 NSC November 2016 QP

Memorandum
Information Technology Grade 12 P2 NSC November 2016 Memo

Memorandum
Information Technology Grade 12 P1 2016 Memo (Eng)
_hlayiso.com_--50e776f8-b245-4554-9243-5cf350cf10d2/v1-50c5c39841428639bad4/card.webp)
Memorandum
Information Technology Grade 12 P1 NSC November 2020 Memo

Memorandum
Information Technology Grade 12 P1 NSC November 2020 Memo
More from Grade 12 Information Technology

Question paper
Information Technology Grade 12 P2 Eastern Cape Mock 2025 QP

Question paper
Information Technology Grade 12 P2 2024 QP (Afr)

Question paper
Information Technology Grade 12 P2 2024 QP (Eng)

Question paper
Information Technology Grade 12 P1 November 2024 NSC QP

Question paper
Information Technology Grade 12 P2 November 2024 NSC QP

Memorandum