SlideShare a Scribd company logo
1 of 45
INTRODUCTION TO COMPUTER
PROGRAMMING
Dr. SANGHEETHAA.S
ASST.PROFESSOR
DEPT . OF ELECTRICAL AND COMPUTER ENGG
INTRODUCTION
• COMPUTER
– WHAT IS A COMPUTER?
– PARTS OF A COMPUTER?
- HARDWARE
INTERNAL
EXTERNAL
-SOFTWARE
SYSTEM
APPLICATION
COMPUTER
• AN ELECTRONIC DEVICE
• Helps us to solve problems according to a set
of instructions, or programs
• To do our work fast, easy
• Saves time and energy
• Can hear music, watch movies, paint pictures,
solve complex problems, entertainment,
infotainment, etc..
Hardware - Hardware refers to the parts of a computer
that you can see and touch, including the case and everything
inside it
• External
– Monitor
– Printer
– Scanner
– Speaker
– Microphone
– Mouse
– Keyboard etc
Internal
• Motherboard
• CPU - microprocessor. It's the "brain" of your
computer—the part that translates
instructions and performs calculations
• Power supply
• HDD
• Graphics card
• Modem card etc
Software - Software refers to the instructions, or
programs, that tell the hardware what to do – machine readable
instructions
• System software
– Compiler
– Linker
– Interpreter
– Loader
– OS
• Application software
– Free and open source
– copyrighted
In the beginning
CRT Display
Keyboard
Mouse
“The Box”
CD-ROM Drive
Floppy
Disk
Drive
Motherboard
CPU
(Central Processing Unit)
SIMM
(Single Inline Memory Module)
HDD
(Hard Disk Drive)
Power Supply
Schematic Diagram of a Personal
Computer...
Ports
CPU
RAM
Disk
controller
Graphics
card
Sound
card
Network
card
Printer
Mouse
Keyboard
Modem Monitor
Speakers
bus
Computer
Output Devices
Input Devices
Tutorial
• What are the types of computers?
• What are the uses of computers?
• What are the input devices you know?
• Write about the working of the input devices?
• Write about the working of output devices?
PROGRAMMING BASICS
• Programming language - main purpose of
programming languages is to provide instructions
to a computer
– Low level - Computers only understand one language
and that is binary language
– Assembly language - ADD A, B – adds two numbers in
memory location A and B
– The assembly language must be translated to machine
code by a separate program called assembler. Thus
assembly languages are unique to a specific computer
High level
• High-level languages are more English-like and,
therefore, make it easier for programmers to "think" in
the programming language. High-level languages also
require translation to machine language before
execution. This translation is accomplished by either a
compiler or an interpreter. Compilers translate the entire
source code program before execution. Interpreters
translate source code programs one line at a time.
• FORTRAN (FORmula TRANslator), BASIC (Bingers
All Purpose Symbolic Instruction Code), PASCAL,
C, C++, Java are some examples of high-level
languages.
Programming Paradigm
• provides the programmer's view of code execution.
• Procedural Programming Languages
• Procedural programming specifies a list of operations
that the program must complete to reach the desired
state. Each program has a starting state, a list of
operations to complete, and an ending point. This
approach is also known as imperative programming.
Integral to the idea of procedural programming is the
concept of a procedure call.
• Example : are FORTRAN and BASIC.
Structured Programming Languages
• Structured programming is a special type of
procedural programming
• programmers break program structure into
small pieces of code that are easily
understood. It also frowns upon the use of
global variables and instead uses variables
local to each subroutine.
• Examples : C, Ada, and Pascal.
Object-Oriented Programming
Languages
• the designer specifies both the data structures
and the types of operations that can be applied
to those data structures
• This pairing of a piece of data with the operations
that can be performed on it is known as an
object. A program thus becomes a collection of
cooperating objects, rather than a list of
instructions. Objects can store state information
and interact with other objects, but generally
each object has a distinct, limited role.
Algorithm
• An algorithm is defined as a step-by-step
sequence of instructions that must terminate
and describe how the data is to be processed
to produce the desired outputs.
• Simply, algorithm is a sequence of
instructions.
• Algorithms are a fundamental part of
computing.
Tools – to document program logic
• flowcharts, structured chart, and Pseudocode
• Pseudocode (derived from pseudo and code)
is a compact and informal high-level
description of a computer algorithm that uses
the structural conventions of programming
languages, but typically omits detailes such as
subroutines, variables declarations and
system-specific syntax.
Example:
• Original Program Specification:
• Write a program that obtains two integer
numbers from the user. It will print out the sum
of those numbers.
• Pseudocode:
• Prompt the user to enter the first integer
Prompt the user to enter a second integer
Compute the sum of the two user inputs
Display an output prompt that explains the
answer as the sum
Display the result
Structured Charts
• Structured chart depicts the logical functions to
the solution of the problem using a chart. It
provides an overview that confirms the solution
to the problem without excessive consideration
to detail. It is high-level in nature.
• Example: Write a program that asks the user to
enter a temperature reading in centigrade and
then prints the equivalent Fahrenheit value.
Example
centigard
centigard
CelsusToFarh
(main func)
InPutCen CalcFar OutPutFar
Fahrenheit
Flowchart
• A flowchart (also spelled flow-chart and flow
chart) is a schematic representation of an
algorithm or a process . The advantage of
flowchart is it doesn’t depend on any
particular programming language, so that it
can used, to translate an algorithm to more
than one programming language. Flowchart
uses different symbols (geometrical shapes) to
represent different processes. The following
table shows some of the common symbols.
Symbols used in a flow chart
Flowchart symbols contd…..
• Example 1: - Draw flow chart of an algorithm
to add two numbers and display their result.
• Algorithm description
• Read the rules of the two numbers (A and B)
• Add A and B
• Assign the sum of A and B to C
• Display the result ( c)
Start
End
Read A, B
C= A+B
Print C
Example 2: Write an algorithm description and draw a flow chart to check a
number is negative or not.
Algorithm description.
1/ Read a number x
2/ If x is less than zero write a message negative
else write a message not negative
• Example 3: - Write the algorithmic description and
draw a flow chart to find the following sum.
• Sum = 1+2+3+…. + 50
• Algorithmic description
• 1. Initialize sum too and counter to 1
– If the counter is less than or equal to 50
•
– • Add counter to sum
– • Increase counter by 1
– • Repeat step 1.1
– Else
• • Exit
•
• 2. Write sum
System Development Life Cycle (SDLC)
• The Systems Development Life Cycle (SDLC) is
a conceptual model used in project
management that describes the stages
involved in a computerized system
development project from an initial feasibility
study through maintenance of the completed
application.
Feasibility study
• The first step is to identify a need for the new system.
components:
• Organizational Feasibility
– How well the proposed system supports the strategic objectives of the
organization.
• Economic Feasibility
– Cost savings
– Increased revenue
– Decreased investment
– Increased profits
• Technical Feasibility
– Hardware, software, and network capability, reliability, and availability
• Operational Feasibility
– End user acceptance
– Management support
– Customer, supplier, and government requirements
Requirements analysis
• Requirements analysis is the process of
analyzing the information needs of the end
users, the organizational environment, and
any system presently being used, developing
the functional requirements of a system that
can meet the needs of the users.
• Also, the requirements should be recorded in
a document, email, user interface storyboard,
executable prototype, or some other form.
Designing solution
• After the requirements have been
determined, the necessary specifications for
the hardware, software, people, and data
resources, and the information products that
will satisfy the functional requirements of the
proposed system can be determined.
Testing designed solution
• A smaller test system is sometimes a good
idea in order to get a “proof-of-concept”
validation prior to committing funds for large
scale fielding of a system without knowing if it
really works as intended by the user.
Implementation
• The real code is written here. Systems
implementation is the construction of the new
system and its delivery into production or day-
to-day operation.
• The key to understanding the implementation
phase is to realize that there is a lot more to
be done than programming. Implementation
requires programming, but it also requires
database creation and population, and
network installation and testing.
• Unit testing
• Integration and System testing
• Maintenance
• What happens during the rest of the
software's life: changes, correction, additions,
moves to a different computing platform and
more. This, the least glamorous and perhaps
most important step of all, goes on seemingly
forever.

More Related Content

What's hot

Intro To Programming Concepts
Intro To Programming ConceptsIntro To Programming Concepts
Intro To Programming Concepts
Jussi Pohjolainen
 
Lect 1. introduction to programming languages
Lect 1. introduction to programming languagesLect 1. introduction to programming languages
Lect 1. introduction to programming languages
Varun Garg
 
4 evolution-of-programming-languages
4 evolution-of-programming-languages4 evolution-of-programming-languages
4 evolution-of-programming-languages
Rohit Shrivastava
 

What's hot (20)

Types of Programming Errors
Types of Programming ErrorsTypes of Programming Errors
Types of Programming Errors
 
Software programming and development
Software programming and developmentSoftware programming and development
Software programming and development
 
Programming languages and concepts by vivek parihar
Programming languages and concepts by vivek pariharProgramming languages and concepts by vivek parihar
Programming languages and concepts by vivek parihar
 
Programming Fundamental Presentation
Programming Fundamental PresentationProgramming Fundamental Presentation
Programming Fundamental Presentation
 
What is an algorithm?
What is an algorithm?What is an algorithm?
What is an algorithm?
 
Basic Computer Programming
Basic Computer ProgrammingBasic Computer Programming
Basic Computer Programming
 
Intro To Programming Concepts
Intro To Programming ConceptsIntro To Programming Concepts
Intro To Programming Concepts
 
Lect 1. introduction to programming languages
Lect 1. introduction to programming languagesLect 1. introduction to programming languages
Lect 1. introduction to programming languages
 
Computer Programming Overview
Computer Programming OverviewComputer Programming Overview
Computer Programming Overview
 
Generations of programming language
Generations of programming languageGenerations of programming language
Generations of programming language
 
Programming Fundamental Slide No.1
Programming Fundamental Slide No.1Programming Fundamental Slide No.1
Programming Fundamental Slide No.1
 
4 evolution-of-programming-languages
4 evolution-of-programming-languages4 evolution-of-programming-languages
4 evolution-of-programming-languages
 
Generations Of Programming Languages
Generations Of Programming LanguagesGenerations Of Programming Languages
Generations Of Programming Languages
 
Debugging
DebuggingDebugging
Debugging
 
Programming languages
Programming languagesProgramming languages
Programming languages
 
Programming language
Programming languageProgramming language
Programming language
 
Compiler Construction Course - Introduction
Compiler Construction Course - IntroductionCompiler Construction Course - Introduction
Compiler Construction Course - Introduction
 
Computer Programming - Lecture 1
Computer Programming - Lecture 1Computer Programming - Lecture 1
Computer Programming - Lecture 1
 
Programming : QBASIC
Programming : QBASICProgramming : QBASIC
Programming : QBASIC
 
Computer languages 11
Computer languages 11Computer languages 11
Computer languages 11
 

Viewers also liked

Online Examination System Report
Online Examination System ReportOnline Examination System Report
Online Examination System Report
Ankan Banerjee
 
Pengenalan kepada pengaturcaraan berstruktur
Pengenalan kepada pengaturcaraan berstrukturPengenalan kepada pengaturcaraan berstruktur
Pengenalan kepada pengaturcaraan berstruktur
Unit Kediaman Luar Kampus
 
Steps for Developing a 'C' program
 Steps for Developing a 'C' program Steps for Developing a 'C' program
Steps for Developing a 'C' program
Sahithi Naraparaju
 
Online examination system
Online examination systemOnline examination system
Online examination system
Rahul Khanwani
 

Viewers also liked (20)

Designer Materials 4
Designer  Materials   4Designer  Materials   4
Designer Materials 4
 
Prepare b sc_project_-_presentatipn.ppt[1]
Prepare b sc_project_-_presentatipn.ppt[1]Prepare b sc_project_-_presentatipn.ppt[1]
Prepare b sc_project_-_presentatipn.ppt[1]
 
Programing Slicing and Its applications
Programing Slicing and Its applicationsPrograming Slicing and Its applications
Programing Slicing and Its applications
 
Lecture 2 c programming by umair ansari
Lecture 2 c programming by umair ansari Lecture 2 c programming by umair ansari
Lecture 2 c programming by umair ansari
 
Online Examination System Report
Online Examination System ReportOnline Examination System Report
Online Examination System Report
 
SULTHAN's - C Programming Language notes
SULTHAN's - C Programming Language notesSULTHAN's - C Programming Language notes
SULTHAN's - C Programming Language notes
 
online examination portal project presentation
online examination portal project presentationonline examination portal project presentation
online examination portal project presentation
 
Finaldocumentation
FinaldocumentationFinaldocumentation
Finaldocumentation
 
Project report on online examination system
Project report on online examination systemProject report on online examination system
Project report on online examination system
 
Online examination system Documentation
Online examination system DocumentationOnline examination system Documentation
Online examination system Documentation
 
Computer programs, flow chart & algorithm
Computer programs, flow chart & algorithmComputer programs, flow chart & algorithm
Computer programs, flow chart & algorithm
 
Pengenalan kepada pengaturcaraan berstruktur
Pengenalan kepada pengaturcaraan berstrukturPengenalan kepada pengaturcaraan berstruktur
Pengenalan kepada pengaturcaraan berstruktur
 
Online examination system
Online examination systemOnline examination system
Online examination system
 
Steps for Developing a 'C' program
 Steps for Developing a 'C' program Steps for Developing a 'C' program
Steps for Developing a 'C' program
 
14.project online eamination system
14.project online eamination system14.project online eamination system
14.project online eamination system
 
Project report
Project reportProject report
Project report
 
Online examination system
Online examination systemOnline examination system
Online examination system
 
Online examination documentation
Online examination documentationOnline examination documentation
Online examination documentation
 
12th CBSE Practical File
12th CBSE Practical File12th CBSE Practical File
12th CBSE Practical File
 
C++ project on police station software
C++ project on police station softwareC++ project on police station software
C++ project on police station software
 

Similar to Introduction to computer programming

Programming requirements for beginning in software engineering.pptx
Programming requirements for beginning in software engineering.pptxProgramming requirements for beginning in software engineering.pptx
Programming requirements for beginning in software engineering.pptx
TeddyDaka
 
Cs1123 2 comp_prog
Cs1123 2 comp_progCs1123 2 comp_prog
Cs1123 2 comp_prog
TAlha MAlik
 

Similar to Introduction to computer programming (20)

C programming for Computing Techniques
C programming for Computing TechniquesC programming for Computing Techniques
C programming for Computing Techniques
 
c programming 1-1.pptx
c programming 1-1.pptxc programming 1-1.pptx
c programming 1-1.pptx
 
Programming requirements for beginning in software engineering.pptx
Programming requirements for beginning in software engineering.pptxProgramming requirements for beginning in software engineering.pptx
Programming requirements for beginning in software engineering.pptx
 
Unit 2 computer software
Unit 2 computer softwareUnit 2 computer software
Unit 2 computer software
 
Computer programming and utilization
Computer programming and utilizationComputer programming and utilization
Computer programming and utilization
 
01CHAP_1.PPT
01CHAP_1.PPT01CHAP_1.PPT
01CHAP_1.PPT
 
Bba i-introduction to computer-u-2- application and system software
Bba  i-introduction to computer-u-2- application and system softwareBba  i-introduction to computer-u-2- application and system software
Bba i-introduction to computer-u-2- application and system software
 
Bsc cs 1 fit u-2 application and system software
Bsc cs 1 fit u-2 application and system softwareBsc cs 1 fit u-2 application and system software
Bsc cs 1 fit u-2 application and system software
 
Mca i-fundamental of computer-u-2- application and system software
Mca  i-fundamental of  computer-u-2- application and system softwareMca  i-fundamental of  computer-u-2- application and system software
Mca i-fundamental of computer-u-2- application and system software
 
Bca i-fundamental of computer-u-2- application and system software
Bca  i-fundamental of  computer-u-2- application and system softwareBca  i-fundamental of  computer-u-2- application and system software
Bca i-fundamental of computer-u-2- application and system software
 
CHAPTER-1.ppt
CHAPTER-1.pptCHAPTER-1.ppt
CHAPTER-1.ppt
 
Algorithmic problem sloving
Algorithmic problem slovingAlgorithmic problem sloving
Algorithmic problem sloving
 
Problem-solving and design 1.pptx
Problem-solving and design 1.pptxProblem-solving and design 1.pptx
Problem-solving and design 1.pptx
 
L1
L1L1
L1
 
lec 1.pptx
lec 1.pptxlec 1.pptx
lec 1.pptx
 
UNIT-111.pptx
UNIT-111.pptxUNIT-111.pptx
UNIT-111.pptx
 
Mba i-ifm-u-2-computer software
Mba i-ifm-u-2-computer softwareMba i-ifm-u-2-computer software
Mba i-ifm-u-2-computer software
 
Algorithm.pdf
Algorithm.pdfAlgorithm.pdf
Algorithm.pdf
 
Cs1123 2 comp_prog
Cs1123 2 comp_progCs1123 2 comp_prog
Cs1123 2 comp_prog
 
Computer Programming In C.pptx
Computer Programming In C.pptxComputer Programming In C.pptx
Computer Programming In C.pptx
 

Recently uploaded

Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
VictoriaMetrics
 
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Medical / Health Care (+971588192166) Mifepristone and Misoprostol tablets 200mg
 

Recently uploaded (20)

WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?
 
WSO2CON 2024 - Not Just Microservices: Rightsize Your Services!
WSO2CON 2024 - Not Just Microservices: Rightsize Your Services!WSO2CON 2024 - Not Just Microservices: Rightsize Your Services!
WSO2CON 2024 - Not Just Microservices: Rightsize Your Services!
 
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
 
WSO2Con2024 - From Blueprint to Brilliance: WSO2's Guide to API-First Enginee...
WSO2Con2024 - From Blueprint to Brilliance: WSO2's Guide to API-First Enginee...WSO2Con2024 - From Blueprint to Brilliance: WSO2's Guide to API-First Enginee...
WSO2Con2024 - From Blueprint to Brilliance: WSO2's Guide to API-First Enginee...
 
Architecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastArchitecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the past
 
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
 
WSO2Con2024 - Low-Code Integration Tooling
WSO2Con2024 - Low-Code Integration ToolingWSO2Con2024 - Low-Code Integration Tooling
WSO2Con2024 - Low-Code Integration Tooling
 
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
 
WSO2CON 2024 - OSU & WSO2: A Decade Journey in Integration & Innovation
WSO2CON 2024 - OSU & WSO2: A Decade Journey in Integration & InnovationWSO2CON 2024 - OSU & WSO2: A Decade Journey in Integration & Innovation
WSO2CON 2024 - OSU & WSO2: A Decade Journey in Integration & Innovation
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
 
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
 
WSO2CON 2024 - IoT Needs CIAM: The Importance of Centralized IAM in a Growing...
WSO2CON 2024 - IoT Needs CIAM: The Importance of Centralized IAM in a Growing...WSO2CON 2024 - IoT Needs CIAM: The Importance of Centralized IAM in a Growing...
WSO2CON 2024 - IoT Needs CIAM: The Importance of Centralized IAM in a Growing...
 
WSO2CON 2024 - Unlocking the Identity: Embracing CIAM 2.0 for a Competitive A...
WSO2CON 2024 - Unlocking the Identity: Embracing CIAM 2.0 for a Competitive A...WSO2CON 2024 - Unlocking the Identity: Embracing CIAM 2.0 for a Competitive A...
WSO2CON 2024 - Unlocking the Identity: Embracing CIAM 2.0 for a Competitive A...
 
WSO2Con2024 - GitOps in Action: Navigating Application Deployment in the Plat...
WSO2Con2024 - GitOps in Action: Navigating Application Deployment in the Plat...WSO2Con2024 - GitOps in Action: Navigating Application Deployment in the Plat...
WSO2Con2024 - GitOps in Action: Navigating Application Deployment in the Plat...
 
WSO2Con2024 - Unleashing the Financial Potential of 13 Million People
WSO2Con2024 - Unleashing the Financial Potential of 13 Million PeopleWSO2Con2024 - Unleashing the Financial Potential of 13 Million People
WSO2Con2024 - Unleashing the Financial Potential of 13 Million People
 
WSO2CON2024 - Why Should You Consider Ballerina for Your Next Integration
WSO2CON2024 - Why Should You Consider Ballerina for Your Next IntegrationWSO2CON2024 - Why Should You Consider Ballerina for Your Next Integration
WSO2CON2024 - Why Should You Consider Ballerina for Your Next Integration
 
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open SourceWSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
 
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
 
WSO2CON 2024 - How CSI Piemonte Is Apifying the Public Administration
WSO2CON 2024 - How CSI Piemonte Is Apifying the Public AdministrationWSO2CON 2024 - How CSI Piemonte Is Apifying the Public Administration
WSO2CON 2024 - How CSI Piemonte Is Apifying the Public Administration
 

Introduction to computer programming

  • 1. INTRODUCTION TO COMPUTER PROGRAMMING Dr. SANGHEETHAA.S ASST.PROFESSOR DEPT . OF ELECTRICAL AND COMPUTER ENGG
  • 2. INTRODUCTION • COMPUTER – WHAT IS A COMPUTER? – PARTS OF A COMPUTER? - HARDWARE INTERNAL EXTERNAL -SOFTWARE SYSTEM APPLICATION
  • 3. COMPUTER • AN ELECTRONIC DEVICE • Helps us to solve problems according to a set of instructions, or programs • To do our work fast, easy • Saves time and energy • Can hear music, watch movies, paint pictures, solve complex problems, entertainment, infotainment, etc..
  • 4. Hardware - Hardware refers to the parts of a computer that you can see and touch, including the case and everything inside it • External – Monitor – Printer – Scanner – Speaker – Microphone – Mouse – Keyboard etc
  • 5. Internal • Motherboard • CPU - microprocessor. It's the "brain" of your computer—the part that translates instructions and performs calculations • Power supply • HDD • Graphics card • Modem card etc
  • 6. Software - Software refers to the instructions, or programs, that tell the hardware what to do – machine readable instructions • System software – Compiler – Linker – Interpreter – Loader – OS • Application software – Free and open source – copyrighted
  • 14. Schematic Diagram of a Personal Computer...
  • 17.
  • 19.
  • 20. Tutorial • What are the types of computers? • What are the uses of computers? • What are the input devices you know? • Write about the working of the input devices? • Write about the working of output devices?
  • 21. PROGRAMMING BASICS • Programming language - main purpose of programming languages is to provide instructions to a computer – Low level - Computers only understand one language and that is binary language – Assembly language - ADD A, B – adds two numbers in memory location A and B – The assembly language must be translated to machine code by a separate program called assembler. Thus assembly languages are unique to a specific computer
  • 22. High level • High-level languages are more English-like and, therefore, make it easier for programmers to "think" in the programming language. High-level languages also require translation to machine language before execution. This translation is accomplished by either a compiler or an interpreter. Compilers translate the entire source code program before execution. Interpreters translate source code programs one line at a time. • FORTRAN (FORmula TRANslator), BASIC (Bingers All Purpose Symbolic Instruction Code), PASCAL, C, C++, Java are some examples of high-level languages.
  • 23. Programming Paradigm • provides the programmer's view of code execution. • Procedural Programming Languages • Procedural programming specifies a list of operations that the program must complete to reach the desired state. Each program has a starting state, a list of operations to complete, and an ending point. This approach is also known as imperative programming. Integral to the idea of procedural programming is the concept of a procedure call. • Example : are FORTRAN and BASIC.
  • 24. Structured Programming Languages • Structured programming is a special type of procedural programming • programmers break program structure into small pieces of code that are easily understood. It also frowns upon the use of global variables and instead uses variables local to each subroutine. • Examples : C, Ada, and Pascal.
  • 25. Object-Oriented Programming Languages • the designer specifies both the data structures and the types of operations that can be applied to those data structures • This pairing of a piece of data with the operations that can be performed on it is known as an object. A program thus becomes a collection of cooperating objects, rather than a list of instructions. Objects can store state information and interact with other objects, but generally each object has a distinct, limited role.
  • 26. Algorithm • An algorithm is defined as a step-by-step sequence of instructions that must terminate and describe how the data is to be processed to produce the desired outputs. • Simply, algorithm is a sequence of instructions. • Algorithms are a fundamental part of computing.
  • 27. Tools – to document program logic • flowcharts, structured chart, and Pseudocode • Pseudocode (derived from pseudo and code) is a compact and informal high-level description of a computer algorithm that uses the structural conventions of programming languages, but typically omits detailes such as subroutines, variables declarations and system-specific syntax.
  • 28. Example: • Original Program Specification: • Write a program that obtains two integer numbers from the user. It will print out the sum of those numbers. • Pseudocode: • Prompt the user to enter the first integer Prompt the user to enter a second integer Compute the sum of the two user inputs Display an output prompt that explains the answer as the sum Display the result
  • 29. Structured Charts • Structured chart depicts the logical functions to the solution of the problem using a chart. It provides an overview that confirms the solution to the problem without excessive consideration to detail. It is high-level in nature. • Example: Write a program that asks the user to enter a temperature reading in centigrade and then prints the equivalent Fahrenheit value.
  • 31. Flowchart • A flowchart (also spelled flow-chart and flow chart) is a schematic representation of an algorithm or a process . The advantage of flowchart is it doesn’t depend on any particular programming language, so that it can used, to translate an algorithm to more than one programming language. Flowchart uses different symbols (geometrical shapes) to represent different processes. The following table shows some of the common symbols.
  • 32. Symbols used in a flow chart
  • 34. • Example 1: - Draw flow chart of an algorithm to add two numbers and display their result. • Algorithm description • Read the rules of the two numbers (A and B) • Add A and B • Assign the sum of A and B to C • Display the result ( c)
  • 35. Start End Read A, B C= A+B Print C
  • 36. Example 2: Write an algorithm description and draw a flow chart to check a number is negative or not. Algorithm description. 1/ Read a number x 2/ If x is less than zero write a message negative else write a message not negative
  • 37. • Example 3: - Write the algorithmic description and draw a flow chart to find the following sum. • Sum = 1+2+3+…. + 50 • Algorithmic description • 1. Initialize sum too and counter to 1 – If the counter is less than or equal to 50 • – • Add counter to sum – • Increase counter by 1 – • Repeat step 1.1 – Else • • Exit • • 2. Write sum
  • 38.
  • 39. System Development Life Cycle (SDLC) • The Systems Development Life Cycle (SDLC) is a conceptual model used in project management that describes the stages involved in a computerized system development project from an initial feasibility study through maintenance of the completed application.
  • 40. Feasibility study • The first step is to identify a need for the new system. components: • Organizational Feasibility – How well the proposed system supports the strategic objectives of the organization. • Economic Feasibility – Cost savings – Increased revenue – Decreased investment – Increased profits • Technical Feasibility – Hardware, software, and network capability, reliability, and availability • Operational Feasibility – End user acceptance – Management support – Customer, supplier, and government requirements
  • 41. Requirements analysis • Requirements analysis is the process of analyzing the information needs of the end users, the organizational environment, and any system presently being used, developing the functional requirements of a system that can meet the needs of the users. • Also, the requirements should be recorded in a document, email, user interface storyboard, executable prototype, or some other form.
  • 42. Designing solution • After the requirements have been determined, the necessary specifications for the hardware, software, people, and data resources, and the information products that will satisfy the functional requirements of the proposed system can be determined.
  • 43. Testing designed solution • A smaller test system is sometimes a good idea in order to get a “proof-of-concept” validation prior to committing funds for large scale fielding of a system without knowing if it really works as intended by the user.
  • 44. Implementation • The real code is written here. Systems implementation is the construction of the new system and its delivery into production or day- to-day operation. • The key to understanding the implementation phase is to realize that there is a lot more to be done than programming. Implementation requires programming, but it also requires database creation and population, and network installation and testing.
  • 45. • Unit testing • Integration and System testing • Maintenance • What happens during the rest of the software's life: changes, correction, additions, moves to a different computing platform and more. This, the least glamorous and perhaps most important step of all, goes on seemingly forever.