SNS COLLEGE OF ENGINEERING
Kurumbapalayam (Po), Coimbatore – 641 107
An Autonomous Institution
Accredited by NBA – AICTE and Accredited by NAAC – UGC with ‘A’ Grade
Approved by AICTE, New Delhi & Affiliated to Anna University, Chennai
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
COURSE NAME : 20CS101 PROGRAMMING FOR PROBLEM SOLVING
I YEAR /I SEMESTER
Unit 1- INTRODUCTION TO PROBLEM SOLVING TECHNIQUES
Topic 2: Fundamentals - Computer Software, Algorithm
9
UNIT I INTRODUCTION TO PROBLEM SOLVING
TECHNIQUES
Fundamentals - Computer Hardware – Computer Software -
Algorithms - Building blocks of algorithms (statements, state, control
flow, functions) - Notation (pseudo code, flow chart, and
programming language) -Problem formulation - Algorithmic
problem solving - Simple strategies for developing algorithms
(iteration, recursion). Illustrative problems .
3 November 2024 COMPUTER SOFTWARE/ 20CS101 PROGRAMMING FOR PROBLEM SOLVING/PRIYANGA R/CSE/SNSCE 2/19
What is Software?
• Software is a set of programs, which is designed to perform a well-defined
function. A program is a sequence of instructions written to solve a particular
problem.
There are two types of software −
• System Software
• Application Software
3 November 2024 COMPUTER SOFTWARE/ 20CS101 PROGRAMMING FOR PROBLEM SOLVING/PRIYANGA R/CSE/SNSCE 3/19
System Software
• The system software is a collection of programs designed to operate,
control, and extend the processing capabilities of the computer itself.
• System software is generally prepared by the computer manufacturers.
These software products comprise of programs written in low-level
languages, which interact with the hardware at a very basic level.
• System software serves as the interface between the hardware and the end
users.
3 November 2024 COMPUTER SOFTWARE/ 20CS101 PROGRAMMING FOR PROBLEM SOLVING/PRIYANGA R/CSE/SNSCE 4/19
Conti…
• Some examples of system software are Operating System,
Compilers, Interpreter, Assemblers, etc.
3 November 2024 COMPUTER SOFTWARE/ 20CS101 PROGRAMMING FOR PROBLEM SOLVING/PRIYANGA R/CSE/SNSCE 5/19
Conti…
Here is a list of some of the most prominent features of a system software −
•Close to the system
•Fast in speed
•Difficult to design
•Difficult to understand
•Less interactive
•Smaller in size
•Difficult to manipulate
•Generally written in low-level language
3 November 2024 COMPUTER SOFTWARE/ 20CS101 PROGRAMMING FOR PROBLEM SOLVING/PRIYANGA R/CSE/SNSCE 6/19
Application Software
• Application software products are designed to satisfy a particular
need of a particular environment. All software applications
prepared in the computer lab can come under the category of
Application software.
• Application software may consist of a single program, such as
Microsoft's notepad for writing and editing a simple text. It may
also consist of a collection of programs, often called a software
package, which work together to accomplish a task, such as a
spreadsheet package.
3 November 2024 COMPUTER SOFTWARE/ 20CS101 PROGRAMMING FOR PROBLEM SOLVING/PRIYANGA R/CSE/SNSCE 7/19
Conti…
Examples of Application software are the following −
• Payroll Software
• Student Record Software
• Inventory Management Software
• Income Tax Software
• Railways Reservation Software
• Microsoft Office Suite Software
• Microsoft Word
• Microsoft Excel
• Microsoft PowerPoint
3 November 2024 COMPUTER SOFTWARE/ 20CS101 PROGRAMMING FOR PROBLEM SOLVING/PRIYANGA R/CSE/SNSCE 8/19
Examples for Application Software
3 November 2024 COMPUTER SOFTWARE/ 20CS101 PROGRAMMING FOR PROBLEM SOLVING/PRIYANGA R/CSE/SNSCE 9/19
Computer Software
3 November 2024 COMPUTER SOFTWARE/ 20CS101 PROGRAMMING FOR PROBLEM SOLVING/PRIYANGA R/CSE/SNSCE 10/19
User, Software and Hardware
3 November 2024 COMPUTER SOFTWARE/ 20CS101 PROGRAMMING FOR PROBLEM SOLVING/PRIYANGA R/CSE/SNSCE 11/19
Features of Application software
Features of application software are as follows −
•Close to the user
•Easy to design
•More interactive
•Slow in speed
•Generally written in high-level language
•Easy to understand
•Easy to manipulate and use
•Bigger in size and requires large storage space
3 November 2024 COMPUTER SOFTWARE/ 20CS101 PROGRAMMING FOR PROBLEM SOLVING/PRIYANGA R/CSE/SNSCE 12/19
Algorithm
Definition: An algorithm is procedure consisting of a finite set of
unambiguous rules (instructions) which specify a finite sequence of
operations that provides the solution to a problem. In other word, an
algorithm is a step-by-step procedure to solve a given problem.
Definition: An algorithm is a finite number of clearly described,
unambiguous steps that can be systematically followed to produce a
desired result for given input in a finite amount of time.
3 November 2024 COMPUTER SOFTWARE/ 20CS101 PROGRAMMING FOR PROBLEM SOLVING/PRIYANGA R/CSE/SNSCE 13/19
Assessment 1
1. What is software and explain its types?
Ans : _______________________________________________________________________
2. Write about algorithm.
Ans : _______________________________________________________________________
3 November 2024 COMPUTER SOFTWARE/ 20CS101 PROGRAMMING FOR PROBLEM SOLVING/PRIYANGA R/CSE/SNSCE 14/19
References
TEXT BOOKS
[Link], “Fundamentals of Computing and Computer Programming”, 2nd Edition Tata McGRaw-Hill Publishing
Company Limited, (2012). (UNIT – I, II, III, IV, V)
[Link],“ Computer Programming”, Pearson Education (India) (2010). (UNIT –II, III IV, V)
[Link] Thareja, “Programming in C”, 2nd Edition, Oxford University Press,(2015). (UNIT –I,II, III, IV, V)
REFERENCES
[Link] Gottfried, “Programming with C”, 2nd Edition, (Indian Adapted Edition), TMH Publications, (2006). (Unit II, III, IV)
[Link] G kochan, “Programming in C” Pearson Education (2008), (UNIT II, III, IV, V)
[Link], “Computer Programming”, RBA Publications (2008), (UNIT I, II, III, IV)
[Link] P. Kanetkar. “Let Us C”, BPB Publications, 2014.(Unit II, III, IV, V)
[Link] Goel and Ajay Mittal, “Computer Fundamentals and Programming in C”, Dorling Kindersley (India) Pvt. Ltd.,
Pearson Education in South Asia, 2011. (UNIT – I, II, III, IV, V)
Thank You
3 November 2024 COMPUTER SOFTWARE/ 20CS101 PROGRAMMING FOR PROBLEM SOLVING/PRIYANGA R/CSE/SNSCE 15/19