# TEL 104 MKK Fundamental Programming: Lecture 3 - PowerPoint PPT Presentation

PPT – TEL 104 MKK Fundamental Programming: Lecture 3 PowerPoint presentation | free to download - id: b3b70-OGY2N

The Adobe Flash plugin is needed to view this content

Get the plugin now

View by Category
Title:

## TEL 104 MKK Fundamental Programming: Lecture 3

Description:

### Example : name: ''Fifty'' given to a data item that contains the value 50. Literal ... the set of characters on the keyboard, plus some special characters. ... – PowerPoint PPT presentation

Number of Views:50
Avg rating:3.0/5.0
Slides: 64
Provided by: achma
Category:
Tags:
Transcript and Presenter's Notes

Title: TEL 104 MKK Fundamental Programming: Lecture 3

1
TEL 104 / MKK Fundamental Programming Lecture
3
2
Assignment 1 Review
• A program is required to read from the screen the
lenght and widht of a rectangular house block,
and the lenght and width of the rectangular house
that has been built on the block. The algorithm
should then compute and display the mowing time
required to cut the grass around the house, at
the rate of two square metres per minute

3
Step 1
• A program is required to read from the screen the
lenght and widht of a rectangular house block,
and the lenght and width of the rectangular house
that has been built on the block. The algorithm
should then compute and display the mowing time
required to cut the grass around the house, at
the rate of two square metres per minute.

4
• Defining diagram

5
Step 2
• A program is required to read from the screen the
lenght and widht of a rectangular house block,
and the lenght and width of the rectangular house
that has been built on the block. The algorithm
should then compute and display the mowing time
required to cut the grass around the house, at
the rate of two square metres per minute.

6
• Defining diagram

7
Introdution to Program Data
• Three main discussion
• Variables
• Constants
• Literals

8
Variables
• Is the name given to a collection of memory cell,
designed to store particular data item.
• The value stored may change or vary as the
program executes.
• Example variable total_amount ? may contain
several values during the execution of the
program

9
Constant
• Is a data item with a name and a value that
remain the same during the execution of the
program.
• Example name Fifty ? given to a data item
that contains the value 50

10
Literal
• Is a constant whose name is the written
representation of its value.
• Example the program may contain the literal 50

11
Data Types
• Should be clearly defined at the beginning of the
program.
• Can be
• Elementary data items
• Data structures

12
Elementary data items
• Contain single variable that is always treated as
a unit.
• Usually classified into data types.
• A data type consists of a set of data values and
a set of operation that can be performed on those
values.

13
Elementary data Items (cont)
• The most common elementary data types
• Integer representing a set of whole numbers,
positive, negative or zero.
• e.g. 3, 576, -5
• Real representing a set of numbers, positive or
negative, which may include values before or
after a decimal point. Sometimes referred to as
floating point numbers.
• e.g. 19.2, 1.92E01, -0.01

14
The most common elementary data types (cont)
• Character representing the set of characters on
the keyboard, plus some special characters.
• e.g. A, b,
• Boolean representing a control flag or switch,
which may contain one of only two possible
values true or false.

15
Data Structures
• Is an aggregate of other data items.
• Its component could be elementary data items or
another data structure.
• Data is grouped together in a particular way to
reflects the situation with which the program is
concerned.

16
The most common Data Structures
• Record a collection of data items or fields that
all bear some relationship to one another.
• example a student record ? may contain the
students number, name, address and enrolled
subjects.
• File a collection of records.
• example a student file ? may contain a
collection of the above student records.

17
The most common Data Structures (cont)
• Array a data structure that is made up of a
number of variables or data items that all have
the same data type and are accessed by the same
name.
• Example an array called scores? may contain a
collection of students exam scores.
made by the use of an index or subscript beside
the name of the array ? scores3

18
The most common Data Structures (cont)
• String a collection of characters that can be
fixed or variable.
• Example the string Basnendar Ekomay represent
a students name.

19
Files
• A popular method to enter and store information.
• Major advantage of using files are
• Several different program can access the same
data
• Data can be entered and reused several times.
• Data can be easily updated and maintained.
• The accuracy of the data is easier to enforce.

20
Files (cont)
• Two different methods of storing data on files
• Sequential or text files, where data is stored
and retrieved sequentally ? may be opened to
read or to write, but not both operations on the
same file.
• Direct or random-access files, where data is
stored and retrieved randomly, using a key or
index ? can be opened to read and write on the
same file.

21
Data Validation
• Data should always undergo a validation check
before it is processed by a program.
• Different types of data require different check
for example
• Correct type the input data should match the
data type definition stated at the beginning of
the program.
• Correct range the input should be within a
required set of values.
• Correct lenght the input data for example,
string should be the correct length.
present.
• Correct date an incoming data should be
acceptable.

22
Introduction to Pseudocode
23
What is Pseudocode?
• One of the popular representation of Algorithm
• Widely choosen because
• easy to read and write
• allow the programmer to concentrate on the logic
of the problem
• Structured in English language

24
Pseudocode Convention
• Statement are written in simple English
• Each instruction is written on a separate line
• Keywords and indentation are used to signify
particular control structures.
• Each set of instructions is written from top to
bottom, with only one entry and one exit.
• Groups of statements may be formed into modules,
and that group given a name.

25
Six Basic Computer Operations
• A computer can receive information
• Verb used
input from a record on a file
• Get ? used when the algorithm is to receive input
from the keyboard.

number_2 Get tax_code
26
2. A computer can put out information
• Verb used
• Print ? used when the output is to be sent to the
printer
• Write ? used when the output is to be written to
a file
• Put, Output, Display ? used when the output is to
be written to the screen
• Prompt ? required before an input instruction
Get, causes the message to be sent to the screen
which requires the user responds, usually by
providing input.
• Print Program Completed
• Write customer record to master file
• Put out name, address and postcode
• Output total_tax
• Display End of data
• Prompt for student_mark
• Get student_mark

27
3. A computer can perform arithmetic
• Verb used
• Compute
• Calculate
• Symbols used
• , -, , /, ()
• Total total number
• Divide total_marks by student_count
• Sales_tax cost_price 0.10
• Compute C (F 32) 5/9

28
A computer can assign a value to a variable or
memory location
• Three cases
• To give data an initial value in pseudocode, the
verbs Initialise or Set are used
• To assign a value as a result of some processing,
the symbols or ? are written
• To keep a variable for later use, the verbs Save
or Store are used.

Initialize total_price to zero Set student_count
to 0 Total_price cost_price
sales_tax Total_price ? cost_price
sales_tax Store customer_num in last_customer_num
29
A computer can compare two variables and select
one of two alternate actions
• Keyword used
• IF, THEN, ELSE
• IF student_attendance_status is part_time THEN
• ELSE
• ENDIF

30
6. A computer can repeat a group of actions
• Keyword used
• DOWHILE, ENDDO

• DOWHILE student_total lt 50
• Print student name, address to report
• ENDDO

31
Meaningful names
• When designing a solution algorithm, a programmer
should introduce unique names, which are
• Represent the variables or objects in the problem
• Meaningful
• example number1, number2, number3 ? more
meaningful than A, B, C
• Used word separator if more than one word
• example sales_tax, word_count
• Or Capital letter as separator
• example salesTax, wordCount

32
The Structure Theorem
• It is possible to write any computer program by
using only three basic control structures that
are easily represented in pseudocode
• Sequence
• Selection
• Repetition

33
Sequence
Is the straightforward execution of one
processing step after another.
Statement a Statement b Statement c
• Set lineCount to zero

34
Selection
Presentation of condition and the choice between
two actions
• IF condition p is true THEN
• statement(s) in true case
• ELSE
• statement(s) in false case
• ENDIF

Example IF student_attendance_status is
1 to full_time_count ENDIgtf
35
Repetition
The presentation of a set of instructions to be
performed repeatedly, as long as a condition is
true
• DOWHILE condition p is true
• statement block
• ENDDO

Example Set student_total to zero DOWHILE
student_total lt 50 Read student record Print
student_total ENDDO
36
DESIGNING A SOLUTION ALGORITHM
• The most challengin task in the life cycle of a
program
• First attempt usually doesnt result in a finished
product
• Keep altering the step and algorithms till
satesfied result achieved.

37
Point to be considered in Solution Algorithm
• A name should be given to the algorithm, which is
describe the function of algorithm
• An END statement used to indicate the algorithm
is complete
• All processing steps between the algorithm name
and END statement should be indented for
• Each processing step in the defining diagram
relates directly to one or more statements in the
algorithm.

38
Example 3.1. Solution Algorithm for example 2.1
them together and print their total.

39
• Defining diagram

40
Solution Algorithm
• Total number1 number2 number3
• Print total
• END

41
Example 3. 2. Find average temperature
• A program is required to prompt the terminal
operator for the maximum and minimum temperature
readings on a particular day, accept those
readings as integers, and calculate and display
to the screen the average temperature, calculated
by (maximum temperature minimum temperature)/2.

42
• Defining diagram

43
Solution Algorithm
• Find average_temperature
• Prompt operator for max_temp, min_temp
• Get max_temp, min_temp
• Avg_temp (max_Temp min_temp)/2
• Output avg_temp to the screen
• END

44
• A program is required to read from the screen the
lenght and widht of a rectangular house block,
and the lenght and width of the rectangular house
that has been built on the block. The algorithm
should then compute and display the mowing time
required to cut the grass around the house, at
the rate of two square metres per minute.

45
Solution Algorithm
• Calculate_mowing_time
• Prompt operator for block_lenght, block_width
• Get block_length, block_width
• block_area block_lenghtblock_width
• Prompt operator for house_lenght, house_width
• Get house_lenght, house_width
• house_areahouse_lenghthouse_width
• Mowing_areablock_area-house_area
• Mowing_timemowing_area/2
• Output mowing_time to screen
• END

46
Checking the solution algorithm(Desk Checking)
• Tracing through the logic of the algorithm with
some chosen data..

47
Step in desk Checking an algorithm
• Choose valid simple input test case (2-3 enough)
• Establish what the expected result should be.
• Make a table of relevant variable names
• Checking the test case line by line, step by step
• Repeat process 4 for other test case
• Check if expected result 2 matches with actual
result 5

48
Example 3.4. Desk Chek for example 2.1
them together and print their total.

49
Solution Algorithm
• Total number1 number2 number3
• Print total
• END

50
Desk Checking
• Choose two sets input test data.
• Set 1 10,20, 30 and Set 2 40, 41, 42

51
2. Establish the expected result for each test
case
52
3. Set up a table of relevant variable names, and
pass each test data set statement by statement.
53
4. Check the expected results (60 and 123) match
the actual results.
54
Desk Check of Example 3. 2.
• A program is required to prompt the terminal
operator for the maximum and minimum temperature
readings on a particular day, accept those
readings as integers, and calculate and display
to the screen the average temperature, calculated
by (maximum temperature minimum temperature)/2.

55
Solution Algorithm
• Find average_temperature
• Prompt operator for max_temp, min_temp
• Get max_temp, min_temp
• Avg_temp (max_Temp min_temp)/2
• Output avg_temp to the screen
• END

56
Desk Checking
• Choose two sets input test data.
• Set 1 30, 10 and Set 2 40, 20

57
2. Establish the expected result for each test
case
58
3. Set up a table of relevant variable names, and
pass each test data set statement by statement.
59
4. Check the expected results match the actual
results.
60
Assignment 2Desk Checking forCompute mowing
time
• A program is required to read from the screen the
lenght and widht of a rectangular house block,
and the lenght and width of the rectangular house
that has been built on the block. The algorithm
should then compute and display the mowing time
required to cut the grass around the house, at
the rate of two square metres per minute.

61
Solution Algorithm
• Calculate_mowing_time
• Prompt operator for block_lenght, block_width
• Get block_length, block_width
• block_area block_lenghtblock_width
• Prompt operator for house_lenght, house_width
• Get house_lenght, house_width
• house_areahouse_lenghthouse_width
• Mowing_areablock_area-house_area
• Mowing_timemowing_area/2
• Output mowing_time to screen
• END

62
Assignment 3 Desk Checking for Mowing_time
which now contains a logic error
• Calculate_mowing_time
• Prompt operator for block_lenght, block_width
• Get block_length, block_width
• block_area block_lenght block_width
• Prompt operator for house_lenght, house_width
• Get house_lenght, house_width
• house_areablock_lenght block_width
• Mowing_areablock_area - house_area
• Mowing_timemowing_area/2
• Output mowing_time to screen
• END

63
Rule of Assignment Submission
• Submit at the latest one day before the following
class begin.
• Submission after the time will be considered as
delay and affect the mark.
• Use a combination of your name and assignment
number as file name.
• For example BasnendarE_Assigment1.doc