Computer Software and Programing Language

Download as pdf or txt
Download as pdf or txt
You are on page 1of 13

UNIT I

Chapter 3: Computer software


SOFTWARE
Software is a generic term for organized collection of computer data and instructions. It is
responsible for controlling, integrating, and managing the hardware components of a
computer and to accomplish specific tasks. In other words, software tells the computer what
to do and howto do it. For example, software instructs the hardware what to display on the
user’s screen, what kinds of input to take from the user, and what kinds of output to generate.
Thus, software communicates with the hardware by organizing the control sequences, and the
hardware carries out the instructions defined by the software.
A computer needs to be instructed to perform any task. These instructions are given in the
form of computer programs, which are written in computer programming languages. A
program controls the activity of the processor. The moment the hardware (processor,
memory, etc.), acts as per the instructions of a program, the program is said to be in running
or executing state.
A set of programs, which are specifically written to provide the user a precise functionality
like solving a specific problem is termed as a software package. For example, word
processing software package provides functionality to the computer so that it can be used
to create text documents like letters and mailing lists. Similarly, an image processing software
package assists a user in drawing and manipulating graphics.

Relationship between software and Hardware


Software refers to the computer programs that are loaded into a computer System
whereas hardware refers to all the visible devices, which are assembled together to build
a computer system. Both Software and hardware go hand in hand; You cannot have one
without the other. Even though hardware is the physical part of the computer, it is nothing
unless it has software to control it. In a way, hardware is like a car without a driver; one need
both to make something happen. Software is a set of instructions that tells the software what to
do and how to perform the requested actions. Thus, hardware and software share a special
relationship. If Hardware is the “Heart” of a computer system, Software is the “Soul”, Both are
complimentary to each other. To get a particular job done by a computer, the relevant software
is loaded in the storage device, which makes a computer perform the desired functions.
Different software’s can be used on the same hardware to perform different jobs.

Categories of Software
Software is categorized as (i) System Software, and (ii) Application Software
System Software - System software consists of several programs, which are directly
responsible for controlling, integrating and managing the individual hardware components of
a computer system. System software is more transparent and less noticed by the users, they
usually interact with the hardware or the applications. This software provides a programming
environment in which programmers can create applications to accommodate their needs. This
environment provides functions that are not available at the hardware level and performs the
tasks related to the execution of an application program. System software makes the computer
functional. They provide basic functionality like file management, visual display and keyboard
input and are used by application software to accomplish these functions.
Example: Operating System, device drivers, language translators, System utilities.

Operating System
It is the first layer of software loaded into computer memory when it starts up. As the first
software layer, all other software that gets loaded after it depends on it for various common
core services. The operating system ensures that different programs executing at the same time
do not interfere with each other. Example: UNIX, LINUX, Windows.
UNIT I

Functions of an Operating System


• Process Management - It handles the creation, deletion, suspension, resumption and
synchronisation of processes.
• Memory Management - It handles allocation and de-allocation of memory space as
required by various programs.
• File Management - It is responsible for creation and deletion of files and directories.
It also organizes, stores, retrieves, names and protects all the files.
• Device Management - It manages all the devices of the computer systems such as
printers and modems. If any device fails, it detects the device failure and notifies the
same to the user.
• Security Management - Protects system resources and information against destruction
and unauthorised use.
• User Interface - Provides the interface between the user and the hardware.

Device Drivers
Device drivers are system programs, which are responsible for proper functioning of devices.
Every device, whether it is a printer, monitor, mouse or keyboard has a driver program
associated with it for its proper functioning. A driver acts like a translator between the device
and program that uses the device. For example: When a user prints a document, the processor
issues a set of generic commands to the printer driver and the driver translates those commands
into the specialised instructions that the printer understand. Note that each device has its own
set of specialised commands that only its driver understands. Device driver is not a independent
program it require assistance from operating system for proper functioning of the device.

Language translators
Computers only understand a language consisting of 0’s and 1’s called machine language.
Language translators help in converting programming languages into machine language.

Language translators are divided into three major categories:


Compiler - The programs written in any high-level programming language needs to be
converted into machine language. This is achieved by using a compiler. As a system program,
a compiler translates source code (user written code) into object code (Binary form).
Interpreter - An interpreter analyses and executes the source code in line-by-line manner,
without looking at the entire program. An interpreter translates a statement in a program and
executes the statement immediately, before translating the next source language statement.
Assembler - The assembly language program must be translated into machine code by separate
program called an assembler. The assembler converts the assembly codes into machine code,
making the assembly program ready for execution.

System Utility:System utility programs perform day-to-day tasks related to the maintenance
of the computer system. They are used to support, enhance and secure existing programs and
data in the computer system.
UNIT I

Functions of system utilities include:


File Management - These utilities make it easier to manage data files. Many programs are
written to help users to find the files, create and organise directories, copy, move and remove
files.
Backup - It may happen that sometime data files are corrupted, or accidently deleted. In such
a case, data backups become very useful.
Data Recovery - It is the process of retrieving deleted or inaccessible data from failed
electronic storage media such as computer hard disk drives, removable media, optical devices
and tape cartridges. The data might become inaccessible due to a software problem,
computer virus, mechanical or electrical malfunction or a deliberate human act. using those
tools, experienced technicians can successfully recover 80 to even 100% of lost data.
Virus Protection - Viruses are small programs written with malicious intent, which copy
themselves to the hard disk from Internet or other infected systems. Viruses keep on spreading
to other computers through the network or exchange of infected storage devices such as
floppies and CD’s. Anti-virus software scans the hard disk for any kind of virus and, if found,
remove them.
Disk Management - Disk management programs include various system software like disk
defragmenter, data compressor and disk formatting tools.
Firewall - Firewall is designed to protect a computer from unauthorised access, especially via
network.
Disk Clean-up - Determines which files on hard drive are no longer needed and delete those
files.

Application software
Application Software may consist of a single program, such as Microsoft’s Notepad. It may
also consist of a collection of programs, often called as software package, which work together
to accomplish a task, such as database management software.

Relationship Between application and system software


Application software are dependent on system software’s. A system software acts as an
interface between the user and the computer hardware, while application software performs
specific tasks. Applications are pieces of software that perform tasks for the user besides
helping the computer operate, which is the task of system software. Application software’s are
controlled by system software, which manages hardware devices and performs background
task for them. Without the system software, the computer will not run and without application
software, the computer will be useless.

Word Processors
A word processor is a software used to compose, format, edit and print electronic documents.
It involves not only typing, but also checking the spelling and grammar of the text ad arranging
it correctly on the page. A variety of typefaces is available for a variety of effects. It is possible
to include pictures, graphs, charts and many other things within the text of the document. It
also allows for changes in margins, fonts and colour.

Spreadsheets
One of the first commercial uses of computers was in processing payroll and other financial
records. It is designed to generate reports in the standard “spreadsheet”. A spreadsheet
application is a rectangular grid, which allows text, numbers and complex functions to be
entered into a matrix of thousands of individual cells. The spreadsheet provides sheets
containing cells each of which may contain text and/or numbers. Cells also contains equations
that calculate results from data placed in other cells or series of cells.
UNIT I

Image Editors - Image editor programs are designed specifically for capturing, creating,
editing and manipulating images. These graphic programs provide a variety of special features
for creating and altering images. It offers a host of filters and image transformation algorithms.
Some image editors also enable the user to create and superimpose layers. Most graphic
programs have the ability to import and export one or more graphic file formats. These
programs enable the user to adjust an image to improve its appearance. With image editing
software, one can darken or lighten an image, rotate it, adjust its contrast.
Example: Adobe Photoshop, Adobe Illustrator and Corel Draw.

Database Management Systems


Database management software is a collection of computer programs that allow storage,
modification and extraction of information from a database in an efficient manner. It supports
the structuring of the database in a standard format and provides tools for data input,
verification, storage, retrieval, query and manipulation. When such software is used,
information systems can be changed much more easily as the organisation’s information
requirements change. New categories of data can be added to the database without disrupting
the existing system. It also controls the security and integrity of the database from unauthorised
access.

Presentation Applications
A presentation is a means of assessment, which requires presentation providers to present their
work orally in the presence of an audience. It combines both visual and verbal elements.
Presentation software allows the user to create presentations by producing slides or handouts
for presentation of projects. It allows users to create a variety of visually appealing electronic
slides for presentations.

Desktop Publishing software


The term desktop publishing is usually used to describe the creation of printed documents using
a desktop computer. It is a technique of using a personal computer to design images and pages,
and assemble type and graphics, then using a laser printer or image setter to output the
assembled pages onto paper, film, or printing plate. These software’s are used to create
magazines, books, newsletters and so on.
Example: Quark Express and Adobe Page Maker

FEATURES OF SOFTWARE
Ease of use - The software systems and applications are becoming more and more easy to use.
In fact, software developers and system analysts go to great lengths to ensure that the products
they develop are user- friendlier than their competitor’s products.
Graphical user interface (GUI) - GUI or graphical user interface has now become the default
standard for most of the software applications. Gone are the days of the crude character-based
interfaces of UNIX and DOS application. Today’s software applications and products provide
the users with perceptive, graphical and easy-to-use interfaces. Now the users do not have to
remember the cryptic system commands or shortcut keys that were a must in the character-
based era. Now almost any task can be accomplished by a mouse click.
Multi-platform capability - Today’s software applications are not developed for just one
platform. Most of the software applications supports multiple platforms-both hardware and
software platforms. There are software applications that support hardware platforms ranging
from mainframes to PCs and different software platforms like MVS, Solaris, AIX, UNIX,
Windows and so on. For example, IBM’s DB2 Universal database is available for a variety
or hardware and software platforms.
UNIT I

Another important feature of today’s software application is that they support multiple
languages and multiple currencies. Many vendors are providing their applications in many
languages like English, Arabic, Japanese, and Chinese and so on.
Compatibility with other software - Now the competition for each market segment in the
software marketplace is rather fierce. We have many software vendors battling for the market
share in the same segment. For example, Microsoft Word 2019 supports all previous versions
of Work like Word 2010, Word 2007, Word 2003 and so on. The two features –compatibility
with earlier versions and compatibility with other products make it easier for the users, as
they can choose the application they want and still use the old files they have created using
other applications or using older versions of the same application.
Mail enabling - Mail enabled applications are designed to take advantage of on e- mail. These
are the familiar word processors, spreadsheets, and other individual desktop applications that
have e- mail features built to them. There is another class of message-centered programs that
are built specifically around e- mail functions.
Web enabling - With the ever- increasing popularity of internet and the amount of
information that is available on the net, most software applications are now web-enabled.
Web enabling helps the user in many different ways. Its use starts while the user is installing
the application. During installation, most of the applications will automatically connect to the
Internet and to the vendor’s web site and will register their products (earlier one had to fill
in a paper form and mail or fax it to the vendor).

DIFFERENCE BETWEEN HARDWARE & SOFTWARE

HARDWARE SOFTWARE
1. It is the physical unit of the computer 1. It is a collection of programs to bring
the hardware system into operation
2. It has permanent structure and cannot 2. It has no permanent structure but can
be altered be altered and reused
3. It is normally affected by agent like 3. It is not affected by these agents to
dust, heat, humidity, etc. some extent
4. Hardware understands only machine 4. It is written by a well-versed
language, lower-level language or programmer and generally in higher
binary level language which is readable by
human being
5. It works with binary code, the presence 5. It is represented by the Higher-Level
or absence of Pulses as 1’s or 0’s. Languages such as BASIC, COBOL,
Etc.,
UNIT I

Chapter 4: Computer programming languages


Introduction
The computer has emerged as the most useful machine in recent times. It can perform a variety
of tasks like receiving data, processing it and producing useful results. However, being a
machine, the computer cannot perform on its own. A computer needs to be instructed to
perform even a simple task like adding two numbers. Computers work on a set of instructions
called computer program which clearly specify the ways to carry out the task.

Developing a Program
In order to design a program a programmer must determine three basic rudiments:
▪ the instructions to be performed
▪ the order in which those instructions are to be performed
▪ the data required to perform those instructions

To perform a task using a program, a programmer has to consider various inputs of the program
along with the process, which is required to convert the input into desired output. Suppose we
want to calculate the sum of two numbers A and B, and store the sum in C; here A and B are
the inputs, addition is the process and C is the output of the program.

Input Processing Output


A, B C=A+B C

Programming Languages
Programming language consists of a set of characters, symbols and usage rules that allow user
to communicate with computer, just as natural languages are used for communication among
human beings.
The main reason why natural languages are not used to instruct the computer is that, firstly, the
natural languages are ambiguous, vaguely structured, and have very large vocabularies. In
contrast, computer languages have relatively few, exactly defined rules for composition of
programs, and strictly controlled vocabularies in which unknown words must be defined before
they can be used. Secondly, in case of natural languages, we can understand even while using
poor grammar and vocabulary. however, in the case of programming languages the rules are
very rigid and the programmer has to follow all the specified rules to create an accurate program
and to obtain the desired results.

Types of Programming Languages


Programming languages can be divided into three major categories:
❖ Machine Language: It is the native language of computers. It uses only 0’s and 1’s to
represent data and instructions.
❖ Assembly Language: It corresponds to symbolic instructions and executable machine
codes and was created to use letters instead of 0’s and 1’s.
❖ High-level Language: These languages are written using a set of words and symbols
following some rules similar to a natural language such as English. The programs
written in HLL are known as source programs and these programs are converted into
machine readable form by using compilers or interpreters.
Generation of Programming Languages
There are five generations of Programming languages. They are:
UNIT I

➢ First Generation Languages: These are low-level languages like machine language.
➢ Second Generation Languages: These are low-level assembly languages used in
kernels and hardware drives.
➢ Third Generation Languages: These are high-level languages like C, C++, Java,
Visual Basic, and JavaScript.
➢ Fourth Generation Languages: These are languages that consist of statements that
are similar to statements in the human language. These are used mainly in database
programming and scripting. Examples of these languages include Perl, Python, Ruby,
SQL, MatLab (Matrix Laboratory).
➢ Fifth Generation Languages: These are the programming languages that have visual
tools to develop a program. Examples of fifth-generation languages include Mercury,
OPS5, and Prolog.
The first two generations are called low-level languages. The next three generations are called
high-level languages.

ALGORITHMS, FLOWCHARTS & PSEUDOCODES


Algorithms are one of the most basic tools data used to develop the problem-solving logic. An
algorithm is defined as finite sequence of explicit instructions that, when provided with the set
of input values, produces an output and then terminates. To be an algorithm, the steps must be
unambiguous and after a finite number of steps, the solution of the problem is achieved.
However, algorithm can have steps that repeat (iterate) or require decisions (logic and
comparison) until the task is completed.
Different rent algorithms may accomplish the same task, with the different set of instructions,
in more or less the same time, space and efforts. For example, from two different recipes for
preparing tea, one ‘add the sugar’ while ‘boiling the water’ and the other ‘after boiling the
water’ produce the same result.
For example, to determine the largest number out of three numbers A, B and C, the
following algorithm can be used:
• Step 1: Start
• Step 2: Read 3 number say A, B and C
• Step 3: Find the largest number between A and B and store it in in MAX_AB
• Step 4: Find the largest number between MAX_AB and C and store it in MAX.
• Step 5: Display MAX
• Step 6: Stop
Algorithm to find largest of three numbers

To find the largest out of three numbers A, B and C, the following algorithm can be used:
UNIT I

• Step 1: Start
• Step 2: Read 3 number say A, B and C
• Step 3: Find the largest number between A and B and store it in in MAX_AB
• Step 4: Find the largest number between MAX_AB and C and store it in MAX.
• Step 5: Display MAX
• Step 6: Stop
Algorithm to find factorial of a given number
Step 1: Start
Step 2: Declare variables n, fact, i
Step 3: Read number from User
Step 4: Initialize variable fact=1 and i=1
Step 5: Repeat Until i<=number
5.1 fact=fact*i
5.2 i=i+1
Step 6: Print fact
Step 7: Stop
Algorithm to check whether the given number is prime or not
Step 1: Start
Step 2: Initialize variables num, flag=1, j=2
Step 3: Read num from user
Step 4: If num<=1 // Any number less than 1 is not a prime number
Display "num is not a prime number"
Goto Step 7
Step 5: Else Repeat the steps until j<[(n/2)+1]
5.1 If remainder of number divide j equals to 0,
Set flag=0
Goto step 6
5.2 j=j+1
Step 6: If flag==0,
Display num+" is not prime number"
Else Display num+" n is prime number"
Step 7: Stop
UNIT I

FLOWCHART
A Flowchart is a pictorial representation of an algorithm in which the steps are drawn in the
form of different shapes of boxes and the logic flow is indicated by interconnecting arrows.
The boxes represent operations and the arrows represent the sequence in which the operations
are implemented. The primary purpose of the flowchart is to help the programmer in
understanding the logic of the program. Therefore, it is always not necessary to include all the
required steps in detail. Flowcharts outline the general procedure.

BASIC FLOWCHART SYMBOLS

GUIDELINES FOR PREPARING FLOWCHARTS


The following guidelines should be used for creating a flowchart:
• The flowchart should be clear, neat and easy to follow.
• The flowchart must have a logical start and finish.
• In drawing a proper flow chart, all necessary requirements should be listed in logical
order.
• The direction of the flow of a procedure should always be from left to right or top to
bottom.
• Only one flow line should come out from a process symbol.

OR

• Only one line should enter a decision symbol. However, two or three floor lines (one
for each possible answer) main leave the decision symbol.

• Only one flow line is used with a terminal symbol.


UNIT I

• Within standard symbols, write briefly. If necessary, use the annotation symbol to
describe data or process more clearly.

SUM = A + B This process will add two


numbers and store the value to
SUM

• In case of complex flow charts, connected symbols are used to reduce the number of
flow lines.
• Intersection of flow lines should be avoided to make it a more effective and better way
of representing communication.
• It is useful to test the validity of the flowchart by passing through it with normal /
unusual test data.

BENEFITS OF FLOWCHARTS
A flowchart helps to clarify how things are currently working and how they could be improved.
It also assists in finding the key elements of a process by drawing clear lines between the end
of one process and the start of next one. Developing a flowchart establishes a common
UNIT I

understanding among the participants about the process. Flowcharts helps in revealing
redundant or misplaced steps. The reasons for using flowcharts as a problem-solving tool are
given below:
1. Makes logic clear - The main advantage of using a flowchart is to plan a task is that it
provides a pictorial representation of the task, which makes the logic easier to follow.
The symbols are connected in such a way that they show the movement (flow) of
information through the system visibly. The steps and how each step is connected to
the next can be clearly seen. Even less experienced personnel can trace the actions
represented by a flowchart, i.e., flowcharts are ideal for visualizing fundamental control
structures employed in computer programming.
2. Communication - Being a graphical representation of a problem-solving logic,
flowchart is a better way of communicating the logic of a system to all concerned. The
diagrammatic representation of logic is easier to communicate to all the interested
parties as compared to actual program code as the users may not be aware of all the
programming techniques and jargons.
3. Effective analysis - With the help of a flowchart, the problem can be analyzed in an
effective way. This is because the analyzing duties of the programmers can be delegated
to other persons, who may or may not know the programming techniques, as they have
a broad idea about the logic. Being outsiders, they often tend to test and analyze the
logic in an unbiased manner.
4. Useful in coding - The flowcharts act as the guide or blueprint during the analysis and
program development phase. Once the flow charts are ready, the programmers can plan
the coding process effectively as they know where to begin and where to end, making
sure that no steps are omitted. As a result, error-free programs are developed in HLL
and that too at a faster rate.
5. Proper testing and debugging - By nature, a flowchart helps in detecting the errors in
a program, as the developers know exactly what the logic should do. Developers can
test various data for a process so that the program can handle every contingency.
6. Appropriate documentation - Flowcharts serve as a good program documentation
tool. Since normally programs are developed for novice users, they can take the help of
the program documentation to know what the program actually does and how to use the
program.

LIMITATIONS OF FLOWCHARTS
A Flowchart can be used for designing the basic concept of the program in pictorial form
but cannot be used for programming purposes some of the limitations are as follows:
1. Complex - The major disadvantage in using flowchart is that when a program is very
large, the flowchart may continue for many pages, making them hard to
follow. Flowcharts tend to get large very quickly and it is difficult to follow the
represented process. It is also very laborious to draw a flowchart for a large program.
You can very well imagine the nightmare when a flow chart is to be developed for a
program consisting of thousands of statements.
2. Costly - Drawing flowcharts are viable only if the problem-solving logic is
straightforward and not very lengthy. However, if flowcharts are to be drawn for huge
application, the time and cost factor of program development may get out of proportion,
making it a costly affair.
3. Difficult to modify - Due to its symbolic nature, any changes or modifications to a
flowchart usually require redrawing the entire logic again, and retain the complex
flowchart is not a simple task. It is not easy to draw thousands of flow lines and symbols
along with proper spacing, especially for a large Complex program.
4. No update - Usually programs are updated regularly. However, the corresponding
update of flowcharts may not take place especially in the case of large programs. As a
UNIT I

result, the logic used in the process flow chart may not match with the actual programs
logic.

Pseudocode
Pseudocode is made up of two words: pseudo and code. Pseudo means imitation and code refers
to instructions, written in a programming language. As the name suggests, pseudocode is not a
real programming code, but it models and may even look like programming code.
It is a generic way of describing an algorithm without using any specific programming
language-related notations. Pseudocode is an outline of a program, written in a form that can
be easily converted into actual programming statements.
Pseudocode uses plain English statements rather than symbols to represent the process in a
computer program. It is also known as PDL (Program Design Language), as it emphasizes
more on the design effect of a computer program or structured English, because usually
pseudocode instructions are written in normal English, but in a structured way.
Pseudocode strikes a fine balance between the understandability and informality of a natural
language like English and the precision of a computer program code. It is somewhat halfway
between English and a programming language. If an algorithm is written in English, the
description may be at such a high level that it may prove difficult to analyze the algorithm and
then to transform it into actual code. If instead, the algorithm is written in code, the programmer
has to invest a lot of time in determining the details of an algorithm, which he may choose not
to implement.
Therefore, the goal of writing pseudocode is to provide a high-level description of an algorithm,
which facilitates analysis and eventual coding, but at the same time suppresses many of the
details that are insignificant.

Pseudocode uses some keywords to denote programming processes. Some of them are as
follows:
• Input: READ, OBTAIN, GET and PROMPT
• Output: PRINT, DISPLAY and SHOW
• Compute: COMPUTE, CALCULATE and DETERMINE
• Initialize: SET and INITIALISE
• Add One: INCREMENT

The pseudocode given below calculate the area of a rectangle:


• PROMPT the user to enter the height of the rectangle
• PROMPT the user to enter the width of the rectangle
• COMPUTE the area by multiplying the height and width
• DISPLAY the area
• STOP

It is better to catch errors at the pseudocode stage rather than connecting them in later stages
as it would prove expensive. Once the pseudocode is accepted, it is transformed into actual
program code using the vocabulary and syntax of the chosen programming language. The
benefit of pseudo code is that it enables the programmer to concentrate on the algorithms
without worrying about all the syntactic details of a particular programming language. In
fact, you can write pseudo code without even knowing what programming language you will
use for the final implementation.

Pseudocode Guidelines
Although there are no established standards for pseudocode construction, a few general
guidelines for developing pseudocodes are given as follows:
UNIT I

• Statements should be written in simple English (or any preferable natural language) and
should be programming language independent. Remember that pseudocodes only
describe the logic plan to develop a program, it is not programming.
• Steps must be understandable, and when the steps (instructions) are followed, they must
produce a solution to the specified problem. If the pseudo code is difficult for a person
to read or translate into code, then something is wrong with the level of detail you have
chosen to use.
• Pseudocodes should be concise.
• Each instruction should be written in a separate line and each statement in pseudocode
should express just one action for the computer. If the task list is properly drawn, then
in most cases each task will correspond to one line of pseudocode.
• Capitalize keywords such as READ, PRINT and so on.
• Each set of instructions is written from top to bottom, with only one entry and one exit.
• It should allow for easy transition from design to coding in the programming language.

Benefits of Pseudocode
Some of the most significant benefits of pseudocode are as follows:
• Since it is language independent, it can be used by most programmers. It allows the
developers to express the problem logic in plain natural language.
• It is easier to develop a program from a pseudocode rather than from a flowchart or
decision table. Programmers do not have to think about syntaxes; they simply have to
concentrate on the underlying logic. The focus is on the steps to solve a problem rather
than on how to use the computer language.
• The words and phrases used in pseudocode are in line with basic computer operations.
This simplifies the translation from the pseudocode to a specific programming
language.
• Unlike flowcharts, pseudocode is compact and does not tend to run over many pages.
Its simple structure and readability make it easier to modify.

Limitations of Pseudocode
Some of the most notable limitations are as follows:
• It does not provide a visual representation of the program’s logic.
• There are no accepted standards for writing pseudocodes. Programmers use their own
style of writing pseudocode.
• It is quite difficult for the beginners to write pseudocode as compared to drawing a
flowchart.

You might also like