ALGORITHMS AND FLOW CHARTS 1 Adapted from the slides Prepared by Department of Preparatory year Prepared by: lec. Ghader Kurdi.

Slides:



Advertisements
Similar presentations
CS 240 Computer Programming 1
Advertisements

Reference :Understanding Computers
CS 240 Computer Programming 1
Algorithms and flow charts
Chapter 1 Pseudocode & Flowcharts
INTRODUCTION TO PROGRAMMING
 Control structures  Algorithm & flowchart  If statements  While statements.
ITEC113 Algorithms and Programming Techniques
Chapter 2- Visual Basic Schneider
Chapter 2: Algorithm Discovery and Design
Program Design and Development
Chapter 2: Algorithm Discovery and Design
Lecture Notes 8/30/05 Program Design & Intro to Algorithms.
Chapter 2: Algorithm Discovery and Design
Chapter 2: Algorithm Discovery and Design
Review Algorithm Analysis Problem Solving Space Complexity
Algorithms and flow charts
Algorithm & Flowchart.
Fundamentals of C programming
Chapter 1 Pseudocode & Flowcharts
ALGORITHMS AND FLOWCHARTS
PROGRAMMING LANGUAGES Prof. Lani Cantonjos. PROGRAM - set of step-by-step instructions that tells or directs the computer what to do. PROGRAMMING LANGUAGE.
CSE 102 Introduction to Computer Engineering What is an Algorithm?
© 2011 Pearson Addison-Wesley. All rights reserved. Addison Wesley is an imprint of Stewart Venit ~ Elizabeth Drake Developing a Program.
Software Life Cycle What Requirements Gathering, Problem definition
Problem Solving Techniques. Compiler n Is a computer program whose purpose is to take a description of a desired program coded in a programming language.
C++ Programming Language Lecture 2 Problem Analysis and Solution Representation By Ghada Al-Mashaqbeh The Hashemite University Computer Engineering Department.
INTRODUCTION TO COMPUTING CHAPTER NO. 04. Programming Languages Program Algorithms and Pseudo Code Properties and Advantages of Algorithms Flowchart (Symbols.
Chapter 1 Introduction Chapter 1 Introduction 1 st Semester 2015 CSC 1101 Computer Programming-1.
Algorithms & Flowchart
ITEC113 Algorithms and Programming Techniques
Chapter 2: General Problem Solving Concepts
Dale Roberts 1 Program Control - Algorithms Department of Computer and Information Science, School of Science, IUPUI CSCI N305.
Basic Control Structures
CHAPTER 1 INTRODUCTION 1 st semester H King Saud University College Of Applied Studies and Community Services CSC 1101 Computer Programming-1.
Chapter 1 Pseudocode & Flowcharts
PROGRAM DEVELOPMENT CYCLE. Problem Statement: Problem Statement help diagnose the situation so that your focus is on the problem, helpful tools at this.
1 Program Planning and Design Important stages before actual program is written.
Structured Programming (4 Credits)
The Hashemite University Computer Engineering Department
8.1 8 Algorithms Foundations of Computer Science  Cengage Learning.
LESSON 1 Introduction to Programming Language. Computer  Comprised of various devices that are referred to as HARDWARE.  The computer programs that.
Flowchart. a diagram of the sequence of movements or actions of people or things involved in a complex system or activity. a graphical representation.
ALGORITHMS AND FLOWCHARTS. Why Algorithm is needed? 2 Computer Program ? Set of instructions to perform some specific task Is Program itself a Software.
Flowcharts C++ Lab. Algorithm An informal definition of an algorithm is: a step-by-step method for solving a problem or doing a task. Input data A step-by-step.
STEP 3- DEVELOP AN ALGORITHM At this stage we break down the problem into simple manageable steps so that they can be handled easily.
Chapter 2: Algorithm Discovery and Design Invitation to Computer Science.
Program Program is a collection of instructions that will perform some task.
| MSC 8102:PROGRAMMING CONCEPTS By Vincent Omwenga, PhD. 1.
Flow Charts And Pseudo Codes Grade 12. An algorithm is a complete step-by- step procedure for solving a problem or accomplishing a task.
 Problem Analysis  Coding  Debugging  Testing.
Program design Program Design Process has 2 phases:
Unit 3: ALGORITHMS AND FLOWCHARTS
2008/09/22: Lecture 6 CMSC 104, Section 0101 John Y. Park
Algorithm & Programming
Chapter 2- Visual Basic Schneider
ALGORITHMS AND FLOWCHARTS
Lecture 2 Introduction to Programming
Introduction to Algorithm – part 1
Programming Fundamentals
ALGORITHMS AND FLOWCHARTS
Unit# 9: Computer Program Development
Chapter 2- Visual Basic Schneider
Chapter 1 Pseudocode & Flowcharts
Introduction to Algorithms and Programming
Chapter 2- Visual Basic Schneider
Understanding Problems and how to Solve them by using Computers
Click to add Text Computers & Instructions. Computers are given instructions in the form of computer programs that are created through the development.
Basic Concepts of Algorithm
Presentation transcript:

ALGORITHMS AND FLOW CHARTS 1 Adapted from the slides Prepared by Department of Preparatory year Prepared by: lec. Ghader Kurdi

Programming language Programming language is an artificial language that specifies instruction to be executed on a computer. There are two types of programming languages: Low level languages High level languages 2

Low level language Low level language is a language that is machine- dependent and/or that offers few control instructions and data types. Each statement in a program written in a low-level language usually corresponds to one machine instruction. 3

Computer Languages There are many types of computer languages, which can be categorized into the following four types:- Low-Level Languages (1st & 2nd Generation Languages) High-Level Languages (3rd Generation Languages) User-Friendly Languages (4th Generation Languages) Object-Oriented Languages (5th Generation Languages) 4

4 Main operation of high level language program Input operations: Like input, read Output operations: Like write, print Arithmetic operations: Like add, subtract, multiply etc.... control transferring operations: Like “GO TO”, conditional, non-conditional etc.... Looping: Like repeat, do while, for, etc... 5

Main step in developing program Problem understanding Algorithm developing Program writing Program editing Program compiling Program running Testing and debugging 6

What an Algorithm is ??? “Sequence of precise instructions which leads to a solution is called an algorithm.” or “An algorithm is a set of steps that defines how a task is to performed.” Example: Steps (algorithm) for preparing a cake. Steps (algorithm) for calculating the area of a rectangle. Steps (algorithm) to solve a first degree equation. Steps (algorithm) to solve a second degree equation using delta. 7

What an Algorithm is ??? In other words, algorithm is a method of representing the step-by-step logical procedure for solving a problem. An algorithm is a recipe for finding the right-answer to a problem or to a difficult problem by breaking down the problem into simple cases. An algorithm can be written in English like sentences or in any standard representation. Sometimes, algorithm written in English like languages is called Pseudo Code. 8

What an Algorithm is ??? According to D.E. Knuth, a pioneer in the computer science discipline, an algorithm must possess the following properties: (i) Finiteness: An algorithm must terminate in a finite number of steps (ii) Definiteness: Each step of the algorithm must be precisely and unambiguously stated (iii) Effectiveness: Each step must be effective, in the sense that it should be primitive (easily convertible into program statement) can be performed exactly in a finite amount of time. (iv) Generality: The algorithm must be complete in itself so that it can be used to solve all problems of a specific type for any input data. (v) Input/output: Each algorithm must take zero, one or more quantities as input data produce one or more output values. 9

Algorithm Representation There are many ways in which we may represent an algorithm; We use many techniques to represent an algorithm in computer programming. The techniques that will study are: Flowchart Pseudocode 10

Some verbs used in Pseudocode Get, Read  used when a computer is required to receive information or input from a particular source Put, Output, Display, Print  used when the computer is required to receive information or input from a particular source Compute, Calculate  used when when the computer is required to perform arithmetic Initialise, Set  used to give data an initial value If  used to select one of two alternate actions Dowhile, Enddo  used to repeat a group of actions 11

Pseudocode Example What is algorithm for calculating the area of a rectangle ? 1. Get the values width, height 2. Calculate the value of area = width * height 3. Display the value of the area 12

What is algorithm for solving a first degree equation (AX+B = 0) ? 1 1. Read the values A,B 2. Check if A=0 (if yes there is no equation) therefore no equation to be solved (end processing). 3. Check if B=0 (if yes X=0 and end processing). 4. Calculate the value of X= -B/A 5. Print the value of : X Pseudocode Example: 13

Why Flowcharts:   The flowchart is graphical representation of the steps required for an algorithm or program.  The flowchart is characterized by: Clarify the program logic Identify alternative processing methods Serve as guide for program coding Serve as documentation 14

Principals of Flowchart Simplicity: -Easy to put on paper -Easy to draw -Readable and meaningful 2. Organization: - putting ideas together and organizing those ideas in logical way. 3. Planning:. - flowchart helps for looking the program in deeper and global way. 15

General Concepts Flowchart must be characterized by the following: 1. The major element of the project. 2. Elements are clearly labeled. 3. Sequence of element must be clear. 4. No gap or dead ends. 5. Sequence of elements must be in logical form. 6. Flowchart must be used correctly. 16

NoNameSymbolUsage1EllipseStart/Stop 2RectangleExpressions 3 Parallelogra m Input (Read) / Output(Print) 4Rhombus Conditional checking 5Arrow Flow of solution 6CircleConnector 7 Elongated Hexagon Continue 8 Rectangle with bars Procedure / Function call 17

Levels of Program Flowchart 1. Simple sequential flowchart. 2. Branched flowchart. 3. Simple-loop flowchart. 4. Multi-loop flowchart. 18

Simple sequential flowchart It is simplest level which contain the sequence of steps without loops or branch. The flowchart comes in straight line from the beginning to the end. 19

Example1: Algorithm for reading student name 1.Start 2.Read student name 3.End start Read student name Stop 20

Example2: Algorithm for calculate the area of circle 1.Start 2.Read value of R 3.Set PI equal to Calculate Area=PI*R*R 5.Print R, Area 6.Stop start start Read R Stop PI=3.14 Area=Pi*R*R Print R, Area 21

Example3: Write an algorithm and draw the flow chart to add two numbers. Algorithm: 1.Start 2.Read a, b 3.Calculate c=a + b 4.Print c 5.Stop Flow chart: Start c = a+ b Print c Read a, b Stop 22

Example4: Write an algorithm and draw the flow chart to find the circumference of circle Algorithm: 1.Start 2.Read r 3.Calculate c= 2*3.14 * r 4.Print c 5.Stop Start c =2 * 3.14 * r Print c Read r Stop 23

Branched flowchart It is branched flowchart, when there is a condition statement in the program. 24

Example5: Draw flow chart for evaluating the following functions: F(X)=x if X>=0, F(X)= -X if X<0 1.Start 2.Read X 3.If X>=0 then go to step 4, else step 5 4.Calculate F(X)=X than go to step 6 5.Calculate F(X)= -X 6.Print X, F(X) 7.Stop start start Read X Stop F(x)= -x Print x, F(x) X>=0 F(x)=x A Yes No 25

Example6: Write an algorithm and draw the flowchart that reads three numbers and print the value of the largest number. 26

Simple-loop flowchart It is a flowchart which contain iteration or repetitions. It is usually called loop flowcharts. In this type we need to repeat some operation several times using the same set of operation. 27

Example7: write an algorithm and draw a flowchart for printing 10 integers starting from 1 Algorithm: 1.Start 2.Take the initial value of A=1 3.Check if A>=10 if yes and If no print the number and increment A by 1 start start End Print A A>=10 ? A=A+1 A=1 Yes No 28

Multi-loop flowchart Looping is used to manage a loop to fulfill a repetition under a definite condition Algorithm Sample 1.Counter i 2. Any Initial value → ( Set i =0) 3.Final Value (N) → (Set N= 10) 4.Increment or Decrement Value (M) → (Set M=1) 29

Exercises Write algorithms and draw flowcharts to represent the logic of the following programs: Calculate and print the sum of numbers from 1 to 100. Accepts a number and display “Even Number” if the number entered is even. Otherwise the program will display “Odd Number”. Asks the user to input the password “hello”. Only if the password is correct, will display “Welcome”. Compares two numbers to see if one is greater than the other and print the result of the comparison. 30