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

Loading...

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



Loading


The Adobe Flash plugin is needed to view this content

Get the plugin now

View by Category
About This Presentation
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
Learn more at: http://www.te.ugm.ac.id
Category:

less

Write a Comment
User Comments (0)
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.
  • Access to the individual items in the array is
    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.
  • Completeness all required fields should be
    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
  • Read ? used when the algorithm is to receive the
    input from a record on a file
  • Get ? used when the algorithm is to receive input
    from the keyboard.

Read student name Get system date Read number_1,
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
  • , -, , /, ()
  • Add number to total
  • 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
  • add 1 to part_time_count
  • ELSE
  • Add 1 to full_time_count
  • ENDIF

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

  • DOWHILE student_total lt 50
  • Read student record
  • Print student name, address to report
  • Add 1 to student_total
  • 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
  • Add 1 to pageCount
  • Print heading line 1
  • Print heading line 2
  • Set lineCount to zero
  • Read customer record

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
part_time THEN add 1 to part_time_count ELSE add
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 name, address to report Add 1 to
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
    readability.
  • 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
  • A program is required to read three numbers, add
    them together and print their total.

39
  • Defining diagram

40
Solution Algorithm
  • Add_three_numbers
  • Read number1, number2, number3
  • 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
What about this ? - Compute 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.

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
  • A program is required to read three numbers, add
    them together and print their total.

49
Solution Algorithm
  • Add_three_numbers
  • Read number1, number2, number3
  • 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
About PowerShow.com