Introduction to Programming in C++:
Algorithms, Flowcharts and Pseudocode
A sequence of instructions is called an algorithm. Algorithms are a fundamental part of computing. If you study computing for many years you will study algorithms of frequently used processes. Books have been written on algorithms for such common activities as storing and ordering data. As most problems you get are unique, you will develop your own algorithms. However, you may find standard algorithms for those parts of your programs that do common activities.
There are two commonly used tools to help to document program logic (the algorithm). These are flowcharts and Pseudocode. We will use both methods here. Generally, flowcharts work well for small problems but Pseudocode is used for larger problems. Some of the common symbols used in flowcharts are shown below:
With flowcharting, essential steps of an algorithm are shown using the shapes above. The flow of data between steps is indicated by arrows, or flowlines. For example, a flowchart (and equivalent Pseudocode) to compute the interest on a loan is shown below:
Flowchart Pseudocode
Read NAME, BALANCE, RATE
Compute INTEREST as BALANCE x RATE
Write (Display) NAME and INTEREST
Note that the Pseudocode also describes the essential steps to be taken, but without the graphical enhancements. Another example of a flowchart and the equivalent Pseudocode is shown below. In this case, the program computes the sum, average and product of three numbers:
Flowchart Pseudocode
Read X, Y, Z
Compute Sum (S) as X + Y + Z Compute Average (A) as S / 3
Compute Product (P) as X x Y x Z
Write (Display) the Sum, Average and Product
Decisions (Switching logic)
Switching logic consists of two components - a condition and a goto command depending on the result of the condition test. The computer can determine the truth value of a statement involving one of six mathematical relations symbolized in the table below:
Symbol Meaning
== Equals
!= Not Equal
< Less than
<= Less than or equal to
> Greater than
>= Greater than or equal to
In practice, the computer is presented not with a true/false statement, but with a question having a "Yes" or "No" answer, for example if A = 10, B = 20, K = 5, and SALES = 10000, then:
Condition (Question) "Answer"
Is A == B? No Is B > A? Yes Is K <= 25? Yes
Is SALES >= $5000.00? Yes
With each question, the computer can be programmed to take a different course of action depending on the answer. A step in an algorithm that leads to more than one possible continuation is called a decision.
In flowcharting, the diamond-shaped symbol is used to indicate a decision. The question is placed inside the symbol, and each alternative answer to the question is used to label the exit arrow
which leads to the appropriate next step of the algorithm. The decision symbol is the only symbol that may have more than one exit.
The example below shows the flowchart for a program that reads two numbers and displays the numbers read in decreasing order:
The equivalent Pseudocode is shown below. Note that with Pseudocode, indentation is used to show the various steps that apply to a decision:
Read A, B
If A is less than B BIG = B
SMALL = A
else
BIG = A SMALL = B
Write (Display) BIG, SMALL
Loops
Most programs involve repeating a series of instructions over and over until some event occurs. For example, if we wish to read ten numbers and compute the average, we need a loop to count the number of numbers we have read.
Count loops are loops where the program must count the number of times operations are completed. The flowchart below illustrates a loop that counts from 1 to 10:
Count loop flowchart
The flowchart shown on the left may be simplified to the form shown on the right.
While count loops work the exact number of times needed, in many cases we do not know how many times we want to do something. It is often dependent on the data provided to the program. Imagine we change our problem to read and compute the average of a number of numbers. We won t know how many numbers there are but will read numbers until there are no more.
Two alternative solutions (using Pseudocode) are shown below:
the all flowchart in attach file
المادة المعروضة اعلاه هي مدخل الى المحاضرة المرفوعة بواسطة استاذ(ة) المادة . وقد تبدو لك غير متكاملة . حيث يضع استاذ المادة في بعض الاحيان فقط الجزء الاول من المحاضرة من اجل الاطلاع على ما ستقوم بتحميله لاحقا . في نظام التعليم الالكتروني نوفر هذه الخدمة لكي نبقيك على اطلاع حول محتوى الملف الذي ستقوم بتحميله .