Vous êtes sur la page 1sur 45

Lecture in Algorithm and Flowcharting

ITEC113 Introduction to Programming Languages

What is system?


Is an organized set of related components established to accomplish a certain task. Note: There are natural systems such as the body s cardiovascular system but many systems have been planned and deliberately put into place by people.

What is system?


For example: a fast-food franchise has a system of serving a customer including taking an order, assembling the food and collecting the amount due.

Phases of SDLC
System Development Life Cycle

Preliminary Investigation: Determining the


problem Analysis: Understanding the existing system Design: Planning the new system Development: Doing the work to bring the new system into being Implementation: Converting the new system

Preliminary Investigation -problem definition

Analysis -gather data -analyze data -develop requirements

Implementation -training -conversion -evaluation -maintenance

SDLC
Design -preliminary design -detail design

Development -scheduling -programming -testing

Computer Program


Is a set of detailed, step-by-step instructions that directs the computer what you want it to do. It is a notation for expressing instructions to be carried out by a computer. Programs are written in a programming language, which is a set of rules that provides a way of telling the computer what operations to perform. The person who creates computer program is called computer programmer.

Activities Involve in Programming


   

 

Understand the problem. Plan the logic. Code the program. Compile the program into machine language. Test the program. Put the program into production.

Activities involve in Programming


Understanding the Problem


 

Before writing the program the programmer must first understand the problem. Satisfy the users need One of the most difficult task since description of what is needed may be vague, or worse yet, the user may not even know what he/she wants. A good programmer is part counselor, and part detective.

Activities Involve in Programming


Plan the Logic The process of planning for the solution of the problem.  They are referred to as ALGORITHMS  Two most common tools are FLOWCHARTS and PSEUDOCODE.  Involves writing down steps (in English).  The programmer doesnt worry about syntax at this point, just the sequence of events that will lead from available input to the desired output.

Activities Involve in Programming


Code the Program


There are over 400 programming languages that exist.  Most programming languages have translators also known as compiler and interpreters.  Pascal, C, C++, Visual Basic, Cobol, etc. The part in which the programmer worry about the correct syntax; command, punctuation, spelling, etc. The actual construction of the source code.

Activities involve in Programming


Compile the program into Machine Language


Machine language - the only language a machine knows.  Its consists of 0s and 1s. Compiler is a special program that translates high-level language instructions into machine language. Compiler catches all syntax errors.

Activities involve in Programming


Test the Program


To execute and then run the program. The program upon execution is being subjected to different kinds of test data to anticipate and correct errors that might occur before releasing the program to the users. Errors can be classified into two: (1) syntactical or logical errors (2) compile or run-time errors.

Activities involve in Programming


Put the Program into Production
   

The organization can now use the program. Training personnel to use the program. Running the program using the actual data. Test for users approval.

Algorithm


A sequence of well-understood steps that one takes to do something. A set of instructions for a person to follow in order to accomplish a certain task. A sequence of instructions that tell how to solve a particular problem. It is a finite set of instructions that specify a sequence of operations to be carried out in order to solve a specific problem or class of problems. Examples:
   

directions for going to a certain place baking a chocolate cake computing income tax searching for a name in a telephone directory

Example: Prepare a Cup of Coffee


       

Step 1: Fill kettle with water. Step 2: Turn on stove. Step 3: Put kettle on stove. Step 4: If water is boiling proceed to step#5 otherwise wait. Step 5: Turn off stove Step 6: Fill mug with boiled water Step 7: Put 1 tsp. of coffee in mug. Step 8: With sugar, put 2 tsp. of sugar in mug, otherwise proceed to step#9. Step 9: With milk, pour 1 tbsp. of milk in mug, otherwise proceed to step#10. Step 10: Stir contents of mug

Characteristics of an Algorithm


Specify each step or instruction exactly.  There must be no ambiguity.  The instructions must be clear. There must be a finite number of steps.  The algorithm must terminate.  There must be a stopping point. There must be an output.  The algorithm must produce the correct result.

Flowcharting
What is Flowcharting?


    

A graphical representation of the logical steps that solves a problem. Programmers use flowcharts to understand the logic processing of data. To visualize how statements in a program are interrelated. Although time consuming, its the best tool for beginners. Use of symbol and phrases to designate the logic of how a problem solved. A common method for defining the logical steps of flow within a program by using a series of symbols to identify the basic input, process and output (IPOs) function within a program. A diagram representing the logical sequence in which a combination of steps or operation is to be performed. It is a blueprint of the program.

Flowcharting
Types of Flowcharts


Program Flowcharts  Depicts the detailed logical flow of process in a program. System Flowcharts  Shows the logic flow of data from one source to another.  Divided into functions of departments or personnel.  Symbols are used to represent documents used and operations undertaken.  Highlights excessive information flow, duplication of information stored in different locations and reasons for delay of transactions.

Flowcharting
Basic Flowcharting Symbols
Terminal block Process symbol On-page Connector

Off-page Connector

Input/Output block

Initialization symbol

Decision symbol

Flow lines

Flowcharting
Basic Flowcharting Symbols Terminal - used to signify the beginning and end of flowchart

OVAL

START

Flowcharting
Basic Flowcharting Symbols


Preparation/Initialization

Hexagon

SUM=0 PRODUCT=0

- signifies the preparation of data Used to select initial conditions Used to represent instructions or group of instructions that will alter or modify a programs course of execution

Flowcharting
Basic Flowcharting Symbols


Input/Output

Parallelogram

Read A Print A

-shows input and output. Data are to be read into the computer memory from an input device or data are to be passed from the memory to an output device.

Flowcharting
Basic Flowcharting Symbols


Process/Processing

Rectangle

-performs any calculations hat are to be done.

Sum = A+B

Flowcharting
Basic Flowcharting Symbols


Decision

Diamond

If x>5

-signifies any decisions that are to be done. Two alternative execution paths are possible. The path to be followed is selected during the execution by testing whether or not the condition specified within the outline is fulfilled.

Flowcharting
Basic Flowcharting Symbols


On-page Connector

Small Circle

-show the entry or exit point of the flowchart. A non-processing symbol used to connect one part of a flowchart to another without drawing flowlines. Conserves space by keeping related blocks near one another, reduces the number of flowlines in complex program and eliminates cross lines from taking place.

Flowcharting
Basic Flowcharting Symbols


Off-page Connector

Pentagon

-designates entry or to exit from one page when a flowchart requires more than one page.

Flowcharting
Basic Flowcharting Symbols


Flowlines

-signifies the process that is to be executed next

Flowcharting
Basic Flowcharting  Almost every program involves the steps of input, processing and output.  Example: Get number Answer = number *2 Print Answer  Most flowcharts need some way to separate each step.  Drawing different boxes around each statement is the standard convention.  Input operation are represented in a parallelogram. A statement in English is written inside the parallelogram.

Flowcharting
What are Variables? Memory allocations, the content of which may vary/change. The capability of memory variables to change its content makes the computers and programming worthwhile. Because one memory location can be used over and over again with different values, program instructions can be written once and then used for thousands of problems. Giving names (for identification) may vary from one programming language to another; some may allow hyphens; others allows underscores; some languages allow dollar signs, others dont. There are languages that limits the length of names to a variable.

 

Flowcharting
Rules in naming variables...  Must be one word.  May contain letters, numbers, hyphens, underscores.  Must not start with a number.  Must not contain a space.  Must have some meaning. Invalid Variable names interest rate rate! - should be one word - contains ! an invalid character

xyxxx - although this is allowed, it doesnt mean or imply anything that it may hold. #total - should not start with a special character.

Flowcharting
Types of Variables  Numeric Variables  The type of variable that can hold a number.  In this example: Answer = number * 2  Some languages allow additional types of data; Pascal and C distinguish between integer or whole number numeric variables and floating point, decimal and fractional numeric variables.  Character, Text or String Variables  Variables that can hold letters of the alphabet and other special character such as punctuation marks.  Example: NAME = WASHINGTON  Logical or Boolean Variables  A special type of variable that can only have two values - TRUE or FALSE.

Flowcharting
Arithmetic Operators and Mathematical Statements  Addition (+)  Subtraction (-)  Multiplication (*)  Division (/)  Modulus (%)


A mathematical statement is composed of a left variable, an assignment operator (usually in the form of an equal sign) a series of operands(may be a set of the same variables or a new set of variables, and /or constants) and (arithmetic) operators.  Example: x=x+1 sum = a + b

Flowcharting
Constants


A constant is a value that never changes during the execution of the program. Constants can be any type-numeric, alphabetic or special symbols. Like variable, constants can be named. The computer sets up a specific memory location to hold the value of the constant. During the execution of the program, the constant is referred to by name. Once the constant is given a value, it cannot be changed during the execution of the program.

Flowcharting
Relational Operator


A relational operator compares two values and determines the relationship between them.
Use op1 > op2 op1 >= op2 op1 < op2 op1 <= op2 op1 == op2 op1 != op2 op1 not= op2 Returns true if op1 is greater than op2 op1 is greater than or equal to op2 op1 is less than op2 op1 is less than or equal to op2 op1 and op2 are equal op1 and op2 are not equal

Operator > >= < <= == != / not=

Flowcharting
Logical Operators


Use logical operators (also called Boolean operators) to express relationships between search expressions.
Use cond1 and cond2 cond1 or cond2 not cond ! cond Returns true if both condition should be true either one of the condition is true

Operator and or not (negation)

ADVANTAGES OF USING FLOWCHARTS


1. Communication: Flowcharts are better way of communicating the logic of a system to all concerned. 2. Effective analysis: With the help of flowchart, problem can be analyzed in more effective way. 3. Proper documentation: Program flowcharts serve as a good program documentation, which is needed for various purposes. 4. Efficient Coding: The flowcharts act as a guide or blueprint during the systems analysis and program development phase. 5. Proper Debugging: The flowchart helps in debugging process. 6. Efficient Program Maintenance: The maintenance of operating program becomes easy with the help of flowchart. It helps the programmer to put efforts more efficiently on that part

LIMITATIONS OF USING FLOWCHARTS


1. Complex logic: Sometimes, the program logic is quite complicated. In that case, flowchart becomes complex and clumsy. 2. Alterations and Modifications: If alterations are required the flowchart may require re-drawing completely. 3. Reproduction: As the flowchart symbols cannot be typed, reproduction of flowchart becomes a problem. 4. The essentials of what is done can easily be lost in the technical details of how it is done.

Draw a flowchart that will accept and display a number. Write its equivalent algorithms.

START

READ N

Algorithm: Step 1: Read in the value of N. Step 2: Print the value of N.

PRINT N

END

Draw a flowchart that will compute and display the sum and product of two numbers. Write its equivalent algorithm.

START

Sum = 0 Product = 0

Read A,B

Algorithm: Step 1: Initialize Sum and Product into 0. Step 2: Read in the values of A and B. Step 3: Compute the sum by adding A and B then compute the product by multiplying A and B. Step 4: Print the computed value of Sum and Product.
Print Sum, Product END

Sum = A + B Product = A * B

Construct a flowchart that will convert an inputted number in Fahrenheit to its equivalent measure in Celsius. Formula: C = (5/9)*(F-32) (5/9)*(F-

START

Celsius=0

Read Fah

Algorithm: Step 1: Initialize Celsius into 0. Step 2: Read in the value of Fahrenheit. Step 3: Compute the value of Celsius. Step 4: Print the computed value of Celsius.

Celsius=(5/9)* (Fah-32)

Print Celsius

END

Draw a flowchart that will input values for A and B. Compare two values inputted and print which of the values is higher including the remark Higher . Write its equivalent algorithm.

START

Input A,B

Algorithm: Step 1: Read the values of A and B. Step 2: Test if A is greater than B. Step 3: If A is greater than B, A is higher. However, if A is less than B, B is higher. Step 4: Print the number and the remark Higher

A>B F Print B, Higher

Print A, Higher

END

Draw a flowchart that will input grade of student and determine whether the grade is passed or failed. Print the name, grade and remarks of student. Write its equivalent algorithm. START
Algorithm: Step 1: Initialize name and remarks into blanks. Step 2: Read in values for Grade and Name. Step 3: Test if Grade is greater than or equal to 60. Step 4: If Grade is greater than or equal to 60, remark is Passed . However, if Grade is below 60, remark is Failed . Step 5: Print the name, grade and remarks.

Name= Remarks =

Read Name, Grade

If Grade >60

Remarks = Passed

Remarks = Failed

Print Name, Grade, Remarks

END

SEATWORK


DEI Manufacturing Company plans to give a yearyearend bonus to each of its employee. Draw a flowchart which will compute the bonus of an employee. Consider the following conditions: If the employee s monthly salary is less than 2,000 pesos, the bonus is 50% of the salary; for employees with salaries greater than 2,000 pesos, the bonus is 1,500 pesos. Print the name and the corresponding bonus for each employee. Write each equivalent algorithms.

Pseudocode


uses everyday language to prepare a brief set of instructions in the order in which they will appear in the finished program. It is an abbreviated version of actual computer code (that's why it is called pseudocode). Pseudocode looks more like a real program than the flowchart does. It allows the programmer to focus on the steps required to solve a program rather than on how to use the computer language. An advantage of pseudocode is that it can be used to describe a program to a nontechnical user and can still provide guidelines for the writing of program code.

Pseudocode

 

A textual presentation of a flowchart  Close to a natural language  The control structures impose the logic May become a part of the program documentation Could be translated into a program

Mod 2

Vous aimerez peut-être aussi