Johannesburg | Diamantvallei Wedding venue en Gastehuis
Diamantvallei Wedding venue en Gastehuis
Dit is die ideale plek vir 'n tuintroue, maar ons het ook 'n stylvolle, dog knus, onthaalsaal, met net soveel sjarme, wat tot 130 gaste kan akkommodeer. Ons venue leen hom eweneens tot formele of informele dekor, volgens jou smaak en voorkeure.
083 258 5239Call
Dit is die ideale plek vir 'n tuintroue, maar ons het ook 'n stylvolle, dog knus, onthaalsaal, met n...
Image Lifestyle Venue PROVINSIALE EKSAMENS INLIGTINGTEGNOLOGIE VRAESTEL 1 JUNIE 2015 GRAAD 11 - PDF Free Download
Author: Sharyl Tate
4 downloads 261 Views 624KB Size
1 Kwartaalverslag 30 Junie 20152 INHOUD FONDS VERWIKKELINGE... 2 MARKOORSIG... 3 OPBRENGSTABELLE... 5 BATEALLOKASIE3 FONDS VERWIKKELINGE Die Verso eff...
1 NATIONAL SENIOR CERTIFICATE GRADE/GRAAD MATHEMATICS P/WISKUNDE V NOVEMBER 04 MEMORANDUM MARKS/PUNTE: 50 This memorandum consists of 6 pages. Hierdie...
1 GAUTENG DEPARTMENT OF EDUCATION / GAUTENGSE DEPARTEMENT VAN ONDERWYS PROVINCIAL EXAMINATION / PROVINSIALE EKSAMEN JUNE/JUNIE 2016 GRADE / GRAAD 11 P...
Nasionale Werkswinkel 7-11 Junie 2015 Kaapstad, Suid Afrika
1 DEVELOPMENT TRUST Nasionale Werkswinkel 7-11 Junie 2015 Kaapstad, Suid Afrika VOL. 24 JUNIE 2015 MASIFUNDISE D E V E L O P M E N T T R U S T Fishers...
INLIGTINGTEGNOLOGIE VRAESTEL 1 JUNIE 2015 GRAAD 11
TYD: 3 URE PUNTE: 150
Hierdie vraestel bestaan uit 10 bladsye
Hierdie vraestel is in DRIE afdelings verdeel. Kandidate moet AL DRIE afdelings beantwoord.
Die duur van hierdie eksamen is drie uur. As gevolg van die aard van hierdie eksamen is dit belangrik om kennis te neem dat jy nie toegelaat sal word om die eksamenlokaal voor die einde van die eksamensessie te verlaat nie.
Maak seker dat jy die vrae volgens die spesifikasies wat in elke vraag gegee word, beantwoord. Punte sal slegs volgens die voorgeskrewe spesifikasies toegeken word.
Beantwoord in elke vraag slegs wat gevra is. Byvoorbeeld, indien die vraag nie datavalidering vereis nie, sal geen punte vir datavalidering toegeken word nie.
Jou programme moet so gekodeer word dat dit met enige data sal werk en nie net met die voorbeelddata wat voorsien is of enige data-uittreksels wat in die vraestel verskyn nie.
Roetines soos soek, sorteer en seleksie moet vanuit eerste beginsels ontwikkel word. Jy mag nie die ingeboude funksies van 'n programmeringstaal vir enige van hierdie roetines gebruik nie.
Alle datastrukture moet deur jou as programmeerder verklaar word. Jy mag nie komponente wat in die koppelvlak voorsien is, gebruik om data te stoor en later weer op te roep nie.
Jy moet jou werk gereeld stoor op die disket wat aan jou gegee is of die skyfspasie wat aan jou toegeken is vir hierdie eksamensessie.
Maak seker dat jou naam en van as kommentaar in elke program verskyn wat jy kodeer, asook op elke gebeurtenis wat aangedui word.
Indien dit vereis word, druk die programmeringskode van al die programme/klasse wat jy voltooi het. Jy sal 'n halfuur tyd vir drukwerk gegun word na die eksamensessie.
Aan die einde van hierdie eksamensessie moet jy 'n disket/CD/DVD/geheuestokkie met al jou werk daarop gestoor, inlewer OF jy moet seker maak dat jou werk op die skyfspasie wat vir hierdie eksamensessie aan jou toegeken is, gestoor is. Maak seker dat alle lêers gelees kan word.
Lys van lêersgidse met lêers kan in die Data- lêergidse verkry word: Vraag_Question_2 Vraag_Question_3
SCENARIO: „n Aantal vriende wil „n LAN-aand hou. Jy word versoek om hulp te verleen met die organisasie van die aand deur „n rekenaarprogram te skryf wat sekere logistieke take sal vergemaklik.
AFDELING A VRAAG 1: ALGEMENE PROGRAMMERINGSVAARDIGHEDE INSTRUKSIES: Skep die projek Vraag1. Voeg jou naam en van as kommentaar in die eerste reël van die hoofvormeenheid (Vraag1_U) -lêer by. Doen die volgende: •
Skep die onderstaande grafiese koppelvlak (GUI).
Die naamlabel moet soos volg geformatteer word: Font: Times New Roman Font style: Bold Italic Font size: 20 Colour: Purple
Elke speler moet aandui watter grootte pizza hy wil bestel en of hy „n koeldrank wil bestel of nie. Die bedrag wat elke speler moet betaal is die gemiddelde koste van al die eetgoed en die prys vir die nuwe speletjie wat hulle wil aankoop. Onthou om BTW van 14% op die totale bedrag in berekening te bring. Die prys van die speletjie moet via die OI in „n teksboks („text box‟) aangebring word. Die rekenaarprogram moet die gemiddelde koste bereken en vertoon. Voltooi die kode vir elke afdeling van VRAAG 1 soos in VRAAG 1.1 tot VRAAG 1.3 hieronder beskryf word. 1.1
Knoppie (‘BUTTON’) – [Vertoon/ Show]
Verkry die volgende data uit die relevante komponente: o o o o
Naam Vlak waarop hy/ sy deelneem ('combo box'). Grootte pizza wat hy/ sy wil bestel ('radio group'). Of hy „n koeldrank wil bestel of nie („checkbox').
Vertoon die speler se inligting, in kolomme, op „n “rich edit”. „n Voorbeeld van die afvoer verskyn op die volgende bladsy. Kopiereg voorbehou
Neem die volgende in ag: o Die prys van pizzas is soos volg: „n L pizza kos R83.00 „n M pizza kos R 60.25 „n S pizza kos R45.50 o „n Koeldrank kos R15.99. o Indien „n speler „n koeldrank bestel moet dit aangedui word met Ja/Yes anders met Nee/No. Voorbeeld van afvoer:
Knoppie – [Bereken koste/ Calculate cost]
Bereken die bedrag wat elke speler moet betaal en vertoon die geformateerde bedrag op die „rich edit‟.
Knoppie – [Reset] Maak die „edit‟, „radio group‟ en „checkbox‟ skoon. Plaas die merker in die naam „edit‟.
• Stoor jou program. • 'n Drukstuk van die kode mag vereis word. TOTAAL AFDELING A:
AFDELING B VRAAG 2: Die organiseerder van die speletjiesaand benodig „n wagwoord vir elke speler. Skep „n rekenaarprogram wat „n wagwoord vir elke speler genereer.
INSTRUKSIES: Die projek Vraag_Question 2 is in die Vraag_Question 2-lêergids voorsien. Voeg jou naam en van as kommentaar in die eerste reël van die hoofvormeenheid (“main form unit”) (Vraag_Question 2_U) -lêer by Doen die volgende: •
Kompileer en voer die program uit. Die program het tans geen funksionaliteit nie. 'n Voorbeeld van die koppelvlak verskyn hieronder:
Voltooi die kode vir hierdie program soos hieronder gespesifiseer word. o Die gebruiker sleutel sy naam en van as een string in en sy geboorte datum in die formaat JJJJ/MM/DD o Die wagwoord word saamgestel deur die van, naam, maand en die geboortedag aaneen te skakel, nadat daar aan die volgende spesifikasies voldoen is: Skei die naam en van, u mag aanvaar dat die gebruiker slegs een naam insleutel, sonder enige spasies. Die van moet omgeskakel word na hoofletters, alle vokale moet verwyder word en spasies moet vervang word met „n #. Bv. van der Walt sal soos volg verander VN#DR#WLT.
Die naam moet in kleinletters vertoon en van agter na voor omgedraai word. Bv. As die naam Johan is moet dit soos volg verander: nahoj. o Die dag, maand en jaar moet volledig getoets word vir geldigheid. U mag aanvaar dat spelers se geboortejaar tussen 1994 en 2001 is. Indien die datum geldig is moet die eerste drie karakters van die maand gegee word. Bv. As die geboortedatum 1997/02/28 is, wys die maand aan as Feb. Indien die datum ongeldig is moet ERROR as die maand gegee word. Die geboortedag is die syfer verkry vanuit die geboortedatum. Voorbeeld van „n wagwoord saamgestel uit geldige data, soos met die volgende toetsdata: Naam en van: Johan van der Walt Geboortedatum: 1997/02/28 VN#DR#WLTnahojFeb28 Voorbeeld van „n wagwoord saamgestel uit ongeldige data, soos met die volgende toetsdata: Naam en van: Johan van der Walt Geboortedatum: 1997/02/31 VN#DR#WLTnahojERROR Vertoon die oorspronklike naam en van, geboortedatum en wagwoord netjies in kolomme op die “rich edit”. Voorsien die kolomme van opskrifte. Voorbeeld van finale afvoer op die volgende bladsy:
Voorbeeld van finale afvoer:
Maak seker dat jou naam en van as kommentaar in die eerste reël van die die vorm verskyn. Stoor al die lêers. Druk die kode wat jy geskep het, indien drukstukke verlang word.
AFDELING C VRAAG 3 Na afloop van die speletjiesaand moet die wenners aangewys word. Die drie toppresteerders ontvang elk „n prys. Skryf kode wat die wenners bepaal en die pryse toeken. 'n Onvoltooide program om die uitslae te verwerk, asook „n tekslêer, is voorsien. Hieronder verskyn „n uittreksel van die inhoud van die tekslêer, Uitslae_Results.txt. Naam; punt1; punt2; punt3; punt4 Johan;34;54;65;1 Kevishin;54;67;12;98 Nellie;34;76;56;54 Sam;45;45;34;43 Divan;76;54;23;98 Monja;44;55;66;77 INSTRUKSIES: Die projek Vraag_Question 3 is in die Vraag_Question 3-lêergids voorsien. Voeg jou naam en van as kommentaar in die eerste reël van die hoofvormeenheid (Vraag_Question 3_U) -lêer by.
Doen die volgende: 3.1
Knoppie (‘BUTTON’) – [Kry Data _Get Data]
Verkry die data vanuit die tekslêer en plaas die name van die spelers in „n skikking, genaamd arrName. Bepaal die gemiddelde punt wat elke speler vir die vier wedstryde behaal het en plaas die gemiddeld in skikking arrAvg. Vertoon die name en gemiddeldes. 3.2
Knoppie – [Verwerk data_ Process data]
Sorteer die skikkings van groot na klein volgens die gemiddelde punt (decending order”) Ken die pryse toe aan die drie toppresteerders. (Sien gegewe skikking as deel van kode vir pryse) Vertoon die name en pryse van die wenners.
Voorbeeld van afvoer:
TOTAAL AFDELING C:
INFORMATION TECHNOLOGY PAPER 1 MEMORANDUM JUNE 2015 GRADE 11
This paper consists of 6 pages
AFDELING A / SECTION A 1.1
GUI private iCountPlayers : integer; rCostPerPlayer, rTotCost, rPrizeGame : double; procedure TForm1.btnBerekenClick(Sender: TObject); begin rTotCost := rTotCost + rPrizeGame; rTotCost := rTotCost + rTotCost*0.14; rCostPerPlayer := rTotCost/ iCountPlayers; redAfvoer.Lines.Add('Cost per player: ' + FloatToStrF(rCostPerPlayer,ffCurrency,8,2)); end; procedure TForm1.btnVertoonClick(Sender: TObject); var sName, sLevel, sBeverage : string; iSize : integer; cSize : char; rPizzaPrice, rBeveragePrize : double; begin sName := edtNaam.Text; inc(iCountPlayers); rCostPerPlayer := 0; sLevel := Vlak_Level.Items[Vlak_Level.ItemIndex]; iSize := rgpPizza.ItemIndex; case iSize of 0 : rPizzaPrice := 45.5; 1 : rPizzaPrice := 60.25; 2 : rPizzaPrice := 83; end; rBeveragePrize := 0; sBeverage := 'Nee/No'; if chbKoeldrank.Checked then begin rBeveragePrize := 15.99; sBeverage := 'Ja/Yes'; end; rTotCost := rTotCost + rPizzaPrice + rBeveragePrize; redAfvoer.Lines.Add(sName + #9 + sLevel+ #9 + FloatToStrF(rPizzaPrice,ffCurrency,8,2) + #9 + sBeverage); end;
procedure TForm1.FormShow(Sender: TObject); begin iCountPlayers := 0; rTotCost := 0; rPrizeGame := StrToFloat(copy(edtPrys.Text,2)); redAfvoer.Paragraph.TabCount := 4; redAfvoer.Paragraph.Tab := 100; redAfvoer.Paragraph.Tab := 200; redAfvoer.Paragraph.Tab := 300; redAfvoer.Paragraph.Tab := 400;
procedure TForm1.BitBtn1Click(Sender: TObject); begin edtNaam.Text := ''; chbKoeldrank.Checked := false; rgpPizza.ItemIndex := -1; edtNaam.SetFocus; end;
AFDELING B / SECTION B 2.
procedure TForm1.btnKodeer_EncryptClick(Sender: TObject); var sName, sSurname, sDOB ,sNameSurname , sPassWord:string; newSurname1,newSurname2, newSurname3, sMonth, sAbrMonth, sDay, sYear: string; iSpace, len, i,iYear, iMonth , icode, icode2 ,iDay, iDays: Integer; monthFlag, dayFlag, yearFlag: boolean;
// Input data sNameSurname := edtNaamVan_NameSurname.Text; sDOB := edtGeboorteDatum_DateOfBirth.Text;
len := Length(sNameSurname); iSpace := Pos(' ',sNameSurname); sName := Copy(sNameSurname,1,iSpace-1); sSurname := Copy(sNameSurname,iSpace+1); sSurname := UpperCase(sSurname);
newSurname1 := ''; newSurname2 := ''; // Change surname for i := 1 to Length(sSurname) do begin if not(sSurname[i] in ['A','E','I','O','U']) then begin newSurname1 := newSurname1 + sSurname[i] ; end; end; for i := 1 to Length(newSurname1) do begin if (newSurname1[i] = ' ') then begin newSurname2 := newSurname2 + '#' ; end else newSurname2 := newSurname2 + newSurname1[i] ; end;
// Draai naam om newSurname3 := ''; for i := Length(sName) downto 1 do begin newSurname3 := newSurname3 + sName[i]; end;
// Get the month of DOB and validate monthFlag := false; dayFlag := false; yearFlag := false; sAbrMonth := 'ERROR'; sMonth := Copy(sDOB,6,2); Val(sMonth,iMonth,icode); sDay := Copy(sDOB,9,2); Val(sDay,iDays,icode2); iYear := StrToInt(Copy(sDOB,1,4)); if (icode = 0) AND (iCode2 = 0) then if (iYear >= 1995) AND (iYear <= 2000) then begin yearFlag := true; case iMonth of 4,6,9,11 : if iDays <= 30 then dayFlag := true; 1,3,5,7,8,10,12 : if iDays <= 31 then dayFlag := true; 2 : begin if IsLeapYear(iYear) then begin if iDays <= 29 then dayFlag := true end else if iDays <= 28 then dayFlag := true; end; end; // end case if (iMonth in [1..12]) then monthFlag := true; end;// end if
if monthFlag AND dayFlag AND yearFlag then begin case iMonth of 1: sAbrMonth := 'Jan'; 2: sAbrMonth := 'Feb'; 3: sAbrMonth := 'Mar'; 4: sAbrMonth := 'Apr'; 5: sAbrMonth := 'May'; 6: sAbrMonth := 'Jun'; 7: sAbrMonth := 'Jul'; 8: sAbrMonth := 'Aug'; 9: sAbrMonth := 'Sep'; 10: sAbrMonth := 'Oct'; 11: sAbrMonth := 'Nov'; 12: sAbrMonth := 'Dec'; end; sPassWord := newSurname2 + newSurname3 + sAbrMonth + IntToStr(iDays); end else sPassWord := newSurname2 + newSurname3 + sAbrMonth; redtAfvoer_Output.Lines.Add(sNameSurname+ #9+ sDOB + #9+sPassWord); procedure TForm1.FormActivate(Sender: TObject); begin redtAfvoer_Output.Paragraph.TabCount := 3; redtAfvoer_Output.Paragraph.Tab := 100; redtAfvoer_Output.Paragraph.Tab := 200; redtAfvoer_Output.Paragraph.Tab := 300; // Clear output redtAfvoer_Output.Clear; redtAfvoer_Output.Lines.Add('Naam en Van' + #9+ 'Geboortedatum' + #9+'Wagwoord'); end;
AFDELING C / SECTION C 3.1
private tData : TextFile; sLine : string; arrName : array[1..30] of string; arrAvg : array [1..30] of double; iCount : integer; procedure TVraag_Question_3.btnGetDataClick(Sender: TObject); var iP, iPos, i, iTot : integer; begin AssignFile(tData,'Uitslae_Results.txt'); try Reset(tData); Except ShowMessage('File not found'); Exit; end; memAfvoer.Lines.Add(''); memAfvoer.Lines.Add('Deelnemers'); memAfvoer.Lines.Add('Naam'+#9+'Gemiddeld'); memAfvoer.Lines.Add('~~~~'+#9+'~~~~~~~~~'); while NOT EOF(tData) do begin inc(iCount); Readln(tData, sLine); iPos := pos(';',sLine); arrName[iCount] := copy(sLine,1,iPos-1); delete(sLine,1,iPos); iTot := 0; for I := 1 to 3 do begin iPos := pos(';',sLine); iP := StrToInt(copy(sLine,1,iPos-1)); iTot := iTot + iP; delete(sLine,1,iPos); end; iTot := iTot + StrToInt(sLine); arrAvg[iCount] := iTot /4 ; end;
for I := 1 to iCount do memAfvoer.Lines.Add(arrName[i]+ #9+FloatToStrf(arrAvg[i],ffFixed ,8,1 )); memAfvoer.Lines.Add(''); memAfvoer.Lines.Add(''); end; procedure TVraag_Question_3.btnProcessClick(Sender: TObject); var i, j : integer; sTemp : string; rTemp : double; begin memAfvoer.Lines.Add('Wenners'); memAfvoer.Lines.Add('Naam'+#9+'Prys'); memAfvoer.Lines.Add('~~~~'+#9+'~~~~'); for I := 1 to iCount-1 do for j := 1 to iCount do if arrAvg[i] > arrAvg[j] then begin sTemp := arrName[i]; arrName[i] := arrName[j]; arrName[j] := sTemp; rTemp := arrAvg[i]; arrAvg[i] := arrAvg[j]; arrAvg[j] := rTemp; end; for I := 1 to 3 do memAfvoer.Lines.Add(arrName[i]+ #9 +arrPrizes[i]); end; procedure TVraag_Question_3.FormShow(Sender: TObject); begin iCount := 0; end;
1 TOTAAL / TOTAL GROOTTOTAAL / GRAND TOTAL
Report "PROVINSIALE EKSAMENS INLIGTINGTEGNOLOGIE VRAESTEL 1 JUNIE 2015 GRAAD 11"