Presentation is loading. Please wait.

Presentation is loading. Please wait.

Chapter 5 Algorithms Introduction to computer, 2nd semester, 2010/2011 Mr.Nael Aburas Faculty of Information Technology.

Similar presentations


Presentation on theme: "Chapter 5 Algorithms Introduction to computer, 2nd semester, 2010/2011 Mr.Nael Aburas Faculty of Information Technology."— Presentation transcript:

1 Chapter 5 Algorithms Introduction to computer, 2nd semester, 2010/2011 Mr.Nael Aburas nras@iugaza.edu.psnras@iugaza.edu.ps Faculty of Information Technology Islamic University of Gaza

2 Introduction  We have seen that before a computer can perform a task, it must be given an algorithm telling it what to do.  Algorithm: set of ordered steps that define how a task is performed.  Algorithm: an ordered set of executable steps that defines a terminating process  We have seen some examples of algorithms such as converting numeric representation, as well as algorithm for the machine cycle that is followed by the CPU.

3 Introduction Machine cycle: ◦ As long as the halt instruction not executed ◦ Continue to execute the following steps: a)Fetch an instruction b)Decode the instruction c)Execute the instruction

4 Introduction As mentioned in the definition, the steps required to be ordered, that means the steps must have a well-established structure in terms of the order of their execution.

5 The abstract nature of algorithm  It is important to differentiate between the algorithm and its representation.  It is similar to different between story and book.  Story is abstract, book is a physical representation of a story, is a book is translated in another language or different format, it still the representation of the story.  A single algorithm can be represented in many ways.

6 Process, algorithm, and program Program is a presentation of an algorithm Process is activity of executing a program “algorithm”.

7 Algorithm representation  The goal of this section is to introduce the basic of primitives and Pseudocode  Primitives:  The representation of an algorithm requires some form of language, human language (English, Arabic), or picture language.  Such natural channels of communications “natural language” leads to misunderstandings (communication problems).

8 Algorithm representation Computer science approaches this problem by establishing a well-defined set of building blocks from which algorithm representation can be constructed, such building block is called a primitive. A collection of primitives a long with a collection of rules stating how the primitives can be combined constitutes a programming language. Each primitive has its own syntax and semantic. Syntax: primitive's symbolic representation Semantic: meaning of the primitive

9 Pseudocode Notational system in which ideas can be expressed informally during the algorithm development process. Pseudocode is a kind of structured English for describing algorithms. Pseudocode generally does not actually obey the syntax rules of any particular language.

10 Pseudocode  Example: saving of a computed value.  If we have computed the sum of two value, and we want to save the result.  General syntax: Name expression  We read it as assign name the value of the expression (assignment statement) ResultA+B Grademid+final So that the grade can be used on future to refer to that sum.

11 Pseudocode  Another recurring semantic structure is:  If (condition) then (activity) else (activity)  Selection one of two possible activites. If (sales have decreased) then (lower the price by 5%) If (not raining ) then (if (temperature = hot) then ( go swimming) else (play golf) ) else (watch TV)

12 Pseudocode Another recurring semantic structure repeated execution of a statement: While (condition) do (activity) ◦ While (tickets remain to be sold) do (sell a ticket) X  3; while (X < 5) do (X  X + 1)

13 Pseudocode, procedure  We want to use out Pseudocode to describe activities that can be used as abstract tools in other applications  Computer science has a variety of terms for such programs units, including sub- program, procedure, model, and functions.  We will use the term procedure  Syntax: Procedure name

14 Figure 5.4 The procedure Greetings in pseudocode 5- 14

15 Iterative Structures Pretest loop: while (condition) do (loop body) Posttest loop: repeat (loop body) until(condition) 5- 15

16 Figure 5.7 Components of repetitive control 5- 16

17 Recursion The execution of a procedure leads to another execution of the procedure. Multiple activations of the procedure are formed, all but one of which are waiting for other activations to complete. 5- 17

18 Flow chart A flowchart is a common type of diagram, that represents an algorithm or process. A flow chart is a graphical or symbolic representation of a process. Each step in the process is represented by a different symbol. The flow chart symbols are linked together with arrows showing the process flow direction.

19 Flowchart symbols

20 Construct Flowchart To construct an effective flowchart  Define the process boundaries with starting and ending points.  Complete the big picture before filling in the details.  Clearly define each step in the process

21 Example 1 Draw a flowchart to find the sum of first 50 natural numbers

22 Example 2 Draw a flowchart to find the largest of three numbers A, B, and C. NO YES Start Read A, B,C IS A>B? IS B>C? IS A>C? Print A Print B Print C YESNO YES NO END


Download ppt "Chapter 5 Algorithms Introduction to computer, 2nd semester, 2010/2011 Mr.Nael Aburas Faculty of Information Technology."

Similar presentations


Ads by Google