GENERAL INFORMATION: |
These marking guidelines are to be used as the basis for the marking session. They were prepared for use by markers. All markers are required to attend a rigorous standardisation meeting to ensure that the guidelines are consistently interpreted and applied in the marking of candidates' work. |
Note that learners who provide an alternate correct solution to that given as example of a solution in the marking guidelines will be given full credit for the relevant solution, unless the specific instructions in the paper was not followed or the requirements of the question was not met |
Annexures A, B, C and D (pages 3 to 10) include the marking grid for each question. |
Annexures E, F, G and H (pages 11 to 22) contain examples of solutions for Questions 1 to 4 in programming code. |
Copies of Annexures A, B, C, D and the summary for the marks of the learner (pages 3 to 10) should be made for each learner and completed during the marking session. |
ANNEXURE A
QUESTION 1: MARKING GRID – GENERAL PROGRAMMING SKILLS
CENTRE NUMBER: | EXAMINATION NUMBER: | |||
QUESTION | DESCRIPTION | MAX. MARKS | LEARNER'S MARKS | |
1.1 | FormCreate event | 4 | ||
1.2 | Button - [1.2 – Number of rolls] | 8 | ||
1.3 | Button – [1.3 – Calculate volume] Display Note: | 7 |
1.4 | Button - [1.4 – Display pattern] Clear output area Note: | 11 | |
1.5 | Button - [1.5 – Characters] Randomly generate an acceptable value Note:
| 10 | |
TOTAL SECTION A: | 40 |
ANNEXURE B
QUESTION 2: MARKING GRID – SQL AND DATABASE PROGRAMMING
CENTRE NUMBER: | EXAMINATION NUMBER: | |||
QUESTION | DESCRIPTION | MAX. MARKS | LEARNER'S MARKS | |
2.1 | SQL statements | |||
2.1.1 | Button [2.1.1 – Clubs from Gauteng and SA affiliated] | 3 | ||
SELECT ClubName, ClubTown FROM tblClubs | ||||
2.1.2 | Button [2.1.2 – Birth year] | 3 | ||
SELECT MemberName, MemberSurname, BirthDate Alternatives for year: | ||||
2.1.3 | Button [2.1.3 – Display members] | 4 | ||
SELECT MemberSurname, MemberName Also accept join |
2.1.4 | Button [2.1.4 - Average membership fee] | 6 | |
SELECT Province, FORMAT(AVG(MemFee) ,"CURRENCY") | |||
2.1.5 | Button [2.1.5 - Change member name] | 3 | |
UPDATE tblMembers | |||
Subtotal: | 19 |
QUESTION 2: MARKING GRID (CONT.)
2.2 | Database Manipulation | ||
2.2.1 | Button [2.2.1 – Outstanding fees] Go to the first record in the tblClubs Note: | 12 | |
2.2.2 | Button [2.2.2 – Update hikes completed] Edit mode | 4 | |
2.2.3 | Button [2.2.3 – Add member] Retrieve the club Id from the radiogroup Accept tblMembers.Append | 5 | |
Subtotal: | 21 | ||
TOTAL SECTION B: | 40 |
ANNEXURE C
QUESTION 3: MARKING GRID – OBJECT-ORIENTED PROGRAMMING
CENTRE NUMBER: | EXAMINATION NUMBER: | |||
QUESTION | DESCRIPTION | MAX. MARKS | LEARNER'S MARKS | |
3.1.1 | getNumberOfDays function Function heading with integer value as return data type | 2 | ||
3.1.2 | calcDistPerDay Function heading with integer as the return type Result = round (fDistance/fNumberOfDays) | 3 | ||
3.1.3 | determineLevel function distance per day = calcDistPerDay Else Also Accept: | 10 | ||
3.1.4 | calcTotalCost function Function heading with real value as return data type | 4 | ||
3.1.5 | toString method Function heading with String return data type | 4 | ||
Subtotal: Object class | 23 |
QUESTION 3: MARKING GRID (CONT.)
QUESTION | DESCRIPTION | MAX. MARKS | LEARNER' S MARKS |
3.2.1 | Combobox - cmbHikingTrails Assignfile with extracted file name + '.txt' | 8 | |
3.2.2 | Button [3.2.2 – Display hiking trail details] Use the objHikingTrail.toString method | 2 | |
3.2.3 | Button [3.2.3 – Display cost] Input number of members in group using an input box Cost = | 4 | |
3.2.4 | Button [3.2.4 – Calculate distance per day] Display number of km using IntToStr(objHikingTrail.calcDistPerDay) | 3 | |
Subtotal Form class: | 17 | ||
TOTAL SECTION C: | 40 |
ANNEXURE D
QUESTION 4: MARKING GRID – PROBLEM-SOLVING PROGRAMMING
CENTRE NUMBER: | EXAMINATION NUMBER: | |||
SECTION | DESCRIPTION | MAX. MARKS | LEARNER'S MARKS | |
4.1 | Button - [4.1 – Display distance chart] Loop from 1 to 5 Note: | 5 | ||
4.2 | Button - [4.2 – Validation] Loop from 1 to 5 Accept the length of the array instead of 5 used in loops Alternative test: | 8 |
4.3 | Button - [4.3 – Route planner]
Extract route from combo box and initialise total distance Loop 4 times (extract all possible combinations) Extract the first check point (row index) Extract the second check point (column index) Delete first 2 characters (logic to start at next index) Read distance from 2D using row and column Update total distance (add distance from 2D) Calculate time (time X distance) Test if hike between points at 2 and 4 OR 4 and 2 multiply time with 2 Update time per day Display names of the two checkpoints Display distance and time (in any format) Test if time per day > 480 Display name of checkpoint to book Reset time per day to 0 Display total distance | 17 | |
TOTAL SECTION D: GRAND TOTAL: | 30 150 |
SUMMARY OF LEARNER'S MARKS:
CENTER NUMBER: | LEARNER'S EXAMINATION NUMBER: | |||||
SECTION A | SECTION B | SECTION C | SECTION D | |||
QUESTION 1 | QUESTION 2 | QUESTION 3 | QUESTION 4 | GRAND TOTAL | ||
MAX. MARKS | 40 | 40 | 40 | 30 | 150 | |
LEARNER'S MARKS |