13
Program Design Using Haggis 1 Haggis is a standardised design notation used by the SQA in place of a programming language for the purpose of asking coding questions in assessments or exams.

Program Design Using Haggis 1 Haggis is a standardised design notation used by the SQA in place of a programming language for the purpose of asking coding

Embed Size (px)

Citation preview

Page 1: Program Design Using Haggis 1 Haggis is a standardised design notation used by the SQA in place of a programming language for the purpose of asking coding

Program Design Using Haggis

1

Haggis is a standardised design notation used by the SQA in place of a programming language for the purpose of asking coding questions in assessments or exams.

Page 2: Program Design Using Haggis 1 Haggis is a standardised design notation used by the SQA in place of a programming language for the purpose of asking coding

1. Keywords are always written in upper case letters.SETSENDRECEIVE

2. Each line begins with the word “Line” (Note the capital L) and a single space before the number.

Line 1Line 2

3. Variable names should be written in lower case letters to distinguish from keywords. Where the user wishes to use a longer variable name the second word should begin with a capital letter. e.g. firstName, secondNumber

4. Square brackets should be used in the SEND command.

5. The lines of coding inside a construct should be indented.Line 1 REPEATLine 2 SEND [“Please enter a number”] TO DISPLAYLine 3 RECEIVE number FROM KEYBOARDLine 4 UNTIL number = 100

2

Haggis formatting rules.

Page 3: Program Design Using Haggis 1 Haggis is a standardised design notation used by the SQA in place of a programming language for the purpose of asking coding

3

PRINT command

True Basic PRINT “Please enter your name”

Haggis SEND [“Please enter your name”] TO DISPLAY

LET commandTrue Basic LET area = length * breadth

Haggis SET area TO length* breadth

INPUT commandTrue Basic INPUT name$

Haggis RECEIVE name FROM KEYBOARD

Page 4: Program Design Using Haggis 1 Haggis is a standardised design notation used by the SQA in place of a programming language for the purpose of asking coding

4

PRINT “Please enter the height of the triangle”INPUT heightPRINT “Please enter the base of the triangle”INPUT baseLET area = (height*base)/ 2PRINT “The area of the triangle is “; areaEND

Line 1 SEND [“Please enter the height of the triangle”] TO DISPLAYLine 2 RECEIVE height FROM KEYBOARDLine 3 SEND [“Please enter the base of the triangle”] TO DISPLAYLine 4 RECEIVE base FROM KEYBOARDLine 5 SET area TO (height*base)/2Line 6 SEND [“The area of the triangle is ”, area] TO DISPLAY

True Basic

Haggis

Page 5: Program Design Using Haggis 1 Haggis is a standardised design notation used by the SQA in place of a programming language for the purpose of asking coding

5

True Basic IF user_answer$ = correct_answer$ THEN

PRINT “Well done! You are correct.”END IF

Haggis

IF userAnswer = correctAnswer THENSEND [“Well done! You are correct.”] TO DISPLAY

END IF

Page 6: Program Design Using Haggis 1 Haggis is a standardised design notation used by the SQA in place of a programming language for the purpose of asking coding

6

LET correct_answer$=”Edinburgh”PRINT “What is the capital of Scotland?” INPUT user_answer$IF user_answer$ = correct_answer$ THEN PRINT “Well done, you are correct.”END IFEND

Line 1 SET correctAnswer TO “Edinburgh”Line 2 SEND [“What is the capital of Scotland?”] TO DISPLAYLine 3 RECEIVE userAnswer FROM KEYBOARDLine 4 IF userAnswer = correctAnswer THENLine 5 SEND [“Well done, you are correct.”] TO DISPLAYLine 6 END IF

True Basic

Haggis

Page 7: Program Design Using Haggis 1 Haggis is a standardised design notation used by the SQA in place of a programming language for the purpose of asking coding

7

Now attempt questions 1, 2 and 3 from your Questions booklet.

Page 8: Program Design Using Haggis 1 Haggis is a standardised design notation used by the SQA in place of a programming language for the purpose of asking coding

8

True BasicFOR counter = 1 TO 10

PRINT firstname$NEXT counter

FOR ..... NEXT loop

Haggis There are 2 ways of writing a FOR loop

(Version 1)Line 1 REPEAT 10 TIMESLine 2 SEND [firstName] TO DISPLAYLine 3 END REPEAT

(Version 2)Line 1 FOR counter FROM 1 TO 10Line 2 SEND [firstName] TO DISPLAYLine 3 END FOR

Page 9: Program Design Using Haggis 1 Haggis is a standardised design notation used by the SQA in place of a programming language for the purpose of asking coding

9

True Basic

Haggis

PRINT “Please enter your sentence”INPUT sentence$FOR counter = 1 to 15

PRINT sentence$NEXT counter

Line 1 SEND [“Please enter your sentence”] TO DISPLAYLine 2 RECEIVE sentence FROM KEYBOARDLine 3 REPEAT 15 TIMESLine 4 SEND sentence TO DISPLAYLine 5 END REPEAT

Page 10: Program Design Using Haggis 1 Haggis is a standardised design notation used by the SQA in place of a programming language for the purpose of asking coding

10

Now attempt question 4 from your Questions booklet.

Page 11: Program Design Using Haggis 1 Haggis is a standardised design notation used by the SQA in place of a programming language for the purpose of asking coding

11

True Basic

DO PRINT “Please enter your mark” INPUT markLOOP UNTIL mark >= 50

DO ... LOOP UNTIL

Haggis

Line 1 REPEATLine 2 SEND [“Please enter your mark”] TO DISPLAYLine 3 RECEIVE mark FROM KEYBOARD Line 4 UNTIL mark >= 50

Page 12: Program Design Using Haggis 1 Haggis is a standardised design notation used by the SQA in place of a programming language for the purpose of asking coding

12

True Basic

Haggis

DO PRINT “Please enter password” INPUT password$LOOP UNTIL password$ = “apple”PRINT “You have clearance”

Line 1 REPEATLine 2 SEND [“Please enter password”] TO DISPLAYLine 3 RECEIVE password FROM KEYBOARD Line 4 UNTIL password=”apple”Line 5 SEND [“You have clearance”] TO DISPLAY

Page 13: Program Design Using Haggis 1 Haggis is a standardised design notation used by the SQA in place of a programming language for the purpose of asking coding

13

Now read Example 5 in your notes booklet and then attempt Questions 5, 6, 7 and 8 from your Questions booklet.