# 305171 Computer Programming Rattapoom Waranusast Department of Electrical and Computer Engineering Faculty of Engineering, Naresuan University.

## Presentation on theme: "305171 Computer Programming Rattapoom Waranusast Department of Electrical and Computer Engineering Faculty of Engineering, Naresuan University."— Presentation transcript:

305171 Computer Programming Rattapoom Waranusast Department of Electrical and Computer Engineering Faculty of Engineering, Naresuan University

 Algorithm is a process or a set of rules to be followed in calculations or other problem-solving operations.  The instructions should be simple and clear enough so that each step can be done without confusion. 2

 This is an example of an algorithm for sorting cards with colors on them into piles of the same color: – Pick up all of the cards. – Pick a card from your hand and look at the color of the card. – If there is already a pile of cards of that color, put this card on that pile. – If there is no pile of cards of that color, make a new pile of just this card color. – If there is still a card in your hand, go back to the second step. – If there is not still a card in your hand, then the cards are sorted, you are done. 3

4

5

 A program is a very specific set of steps and rules.  A program is an implementation of an algorithm in a particular language to run on a computer (usually a particular kind of computer) – Algorithm = what we want to do – Program = what we actually did  The process of creating a program is called programming.  Programming is breaking a task down into small steps and rules. 6

 Put these words in alphabetical order: apple, zebra, abacus  Count the number of words in these sentences: – “Programming really can be fun.” – “John,do it again.” – “Some people just love to type really short lines, instead of using the full width of the page.” 7

 A flowchart is a diagram that depicts the “flow” of a program. 8 START Display message “How many hours did you work?” Read Hours Display message “How much do you get paid per hour?” Read Pay Rate Multiply Hours by Pay Rate. Store result in Gross Pay. Display Gross Pay END

 Terminals – represented by rounded rectangles – indicate a starting or ending point 9 START Display message “How many hours did you work?” Read Hours Display message “How much do you get paid per hour?” Read Pay Rate Multiply Hours by Pay Rate. Store result in Gross Pay. Display Gross Pay END Terminal

 Input/Output Operations – represented by parallelograms – indicate an input or output operation 10 START Display message “How many hours did you work?” Read Hours Display message “How much do you get paid per hour?” Read Pay Rate Multiply Hours by Pay Rate. Store result in Gross Pay. Display Gross Pay END Input/Output Operations

 Processes – represented by rectangles – indicates a process such as a mathematical computation or variable assignment 11 START Display message “How many hours did you work?” Read Hours Display message “How much do you get paid per hour?” Read Pay Rate Multiply Hours by Pay Rate. Store result in Gross Pay. Display Gross Pay END Process

Variable Contents: Hours: ? Pay Rate: ? Gross Pay: ? 12 START Display message “How many hours did you work?” Read Hours Display message “How much do you get paid per hour?” Read Pay Rate Multiply Hours by Pay Rate. Store result in Gross Pay. Display Gross Pay END

Variable Contents: Hours: ? Pay Rate: ? Gross Pay: ? 13 START Display message “How many hours did you work?” Read Hours Display message “How much do you get paid per hour?” Read Pay Rate Multiply Hours by Pay Rate. Store result in Gross Pay. Display Gross Pay END How many hours did you work?

Variable Contents: Hours: 40 Pay Rate: ? Gross Pay: ? 14 START Display message “How many hours did you work?” Read Hours Display message “How much do you get paid per hour?” Read Pay Rate Multiply Hours by Pay Rate. Store result in Gross Pay. Display Gross Pay END How many hours did you work? 40

Variable Contents: Hours: 40 Pay Rate: ? Gross Pay: ? 15 START Display message “How many hours did you work?” Read Hours Display message “How much do you get paid per hour?” Read Pay Rate Multiply Hours by Pay Rate. Store result in Gross Pay. Display Gross Pay END How many hours did you work? 40 How much do you get paid per hour?

Variable Contents: Hours: 40 Pay Rate: 300 Gross Pay: ? 16 START Display message “How many hours did you work?” Read Hours Display message “How much do you get paid per hour?” Read Pay Rate Multiply Hours by Pay Rate. Store result in Gross Pay. Display Gross Pay END How many hours did you work? 40 How much do you get paid per hour? 300

Variable Contents: Hours: 40 Pay Rate: 300 Gross Pay: 12000 17 START Display message “How many hours did you work?” Read Hours Display message “How much do you get paid per hour?” Read Pay Rate Multiply Hours by Pay Rate. Store result in Gross Pay. Display Gross Pay END How many hours did you work? 40 How much do you get paid per hour? 300

Variable Contents: Hours: 40 Pay Rate: 300 Gross Pay: 12000 18 START Display message “How many hours did you work?” Read Hours Display message “How much do you get paid per hour?” Read Pay Rate Multiply Hours by Pay Rate. Store result in Gross Pay. Display Gross Pay END How many hours did you work? 40 How much do you get paid per hour? 300 12000

Variable Contents: Hours: 40 Pay Rate: 300 Gross Pay: 12000 19 START Display message “How many hours did you work?” Read Hours Display message “How much do you get paid per hour?” Read Pay Rate Multiply Hours by Pay Rate. Store result in Gross Pay. Display Gross Pay END How many hours did you work? 40 How much do you get paid per hour? 300 12000

 Sequence  Decision  Repetition  Case 20

 a series of actions are performed in sequence  The pay-calculating example was a sequence flowchart. 21

 One of two possible actions is taken, depending on a condition.  In the flowchart segment below, the question “is x < y?” is asked. If the answer is no, then process A is performed. If the answer is yes, then process B is performed. 22 A X < Y ? B YesNo

 A repetition structure represents part of the program that repeats. This structure is commonly known as a loop.  In the flowchart segment, the question “is x < y?” is asked. If the answer is yes, then Process A is performed. The question “is x < y?” is asked again. Process A is repeated as long as x is less than y. When x is no longer less than y, the repetition stops and the structure is exited. 23 x < y? A YES

 One of several possible actions is taken, depending on the contents of a variable.  The structure below indicates actions to perform depending on the value in years_employed. 24 CASE years_employed 1 2 3 Other bonus = 100 bonus = 200 bonus = 400 bonus = 800

 Sometimes a flowchart will not fit on one page length.  A connector (represented by a small circle) allows you to connect two flowchart segments on the same page.  The “A” connector indicates that the second flowchart segment begins where the first segment ends. 25 A A START END

The position of the module symbol indicates the point the module is executed. A separate flowchart can be constructed for the module. 26 START END Read Input. Call calc_pay function. Display results. calc_pay return net = rate * hour pay = net - tax

 Off-page connector – Used to connect remote flowchart portion on different page  Comment – Used to add description  Document – Used to represent a print out  Database – Used to represent a database 27 Put any Comments Here.

 Pseudocode is a compact and informal high- level description of a computer programming algorithm that uses the structural conventions of a programming language, but is intended for human reading rather than machine reading. Pseudocode typically omits details that are not essential for human understanding of the algorithm, such as variable declarations, system-specific code and subroutines. (Wikipedia) 28

 Pseudocode generally does not actually obey the syntax rules of any particular language.  There is no systematic standard form.  Pseudocode may therefore vary widely in style, from a near-exact imitation of a real programming language at one extreme, to a description approaching formatted prose at the other. 29

 Write only one statement per line  Capitalize initial keyword  Indent to show hierarchy  End multiline structures  Keep statements language independent 30

BEGIN Procedure_NetCalc READ name, grossPay, taxes IF taxes > 0 net = grossPay – taxes ELSE net = grossPay ENDIF WRITE name, net END Procedure_NetCalc 31

 Pseudocode IF Y > 3 X = 5 ELSE X = 10 ENDIF 32 X = 5 3 < Y ? X = 10 YesNo

BEGIN count = 0 WHILE count < 10 DO Process ENDWHILE WRITE “The End” END BEGIN Process ADD 1 to count WRITE count END Process 33 count = 0 Start Count < 10 End Write “The End” Process No Yes Add 1 to count Process Count < 10 Return Write count

AdvantagesDisadvantages Flowchart Standardized Visual Hard to modify Structured design elements not implemented Special software required Pseudocode Easily modified Implements structured concepts Done easily on word processor Not visual No accepted standard, varies from company to company 34

Download ppt "305171 Computer Programming Rattapoom Waranusast Department of Electrical and Computer Engineering Faculty of Engineering, Naresuan University."

Similar presentations