SlideShare a Scribd company logo
Chapter 1
Introduction to Programming
Introduction
 What is a computer?
 A Computer is an electronic device that accepts data,
performs computations, and makes logical decisions
according to instructions that have been given to it; then
produces meaningful information in a form that is useful to
the user.
Inputs Process Outputs
What is a program?
 Computer programs, software programs, or just
programs are the instructions that tells the computer what
to do.
 Computer programming (programming or coding) is
the process of writing, testing, debugging/troubleshooting,
and maintaining the source code of computer programs
Intro
 A computer program consists of two elements:
 Code – action
 Data – characteristics
 Computer programs (also know as source code) is often written
by professionals known as Computer Programmers. Source
code is written in one of programming languages.
Programming language
 A programming language is an artificial language that can be
used to control the behavior of a machine, particularly a
computer.
 Programming languages, like natural language, are defined by
syntactic and semantic rules which describe their structure and
meaning respectively.
 The syntax of a language describes the possible combinations of
symbols that form a syntactically correct program.
 The meaning given to a combination of symbols is handled by
semantics.
Programming language
 A main purpose of programming languages is to provide instructions
to a computer.
 Available programming languages come in a variety of forms and
types.
 Programming languages can be divided in to two major categories:
 Low-level languages
 High-level languages
Low-level Languages
Machine language
It is the lowest level programming language in which all instructions and
data are written in a binary machine code, i.e. 0s and 1s.
Computers only understand one language and that is binary language or the
language of 1s and 0s.
For example:
00101010 000000000001 000000000010
10011001 000000000010 000000000011
In the initial years of computer programming, all the instructions were
given in binary form. Although the computer easily understood these
programs, it proved too difficult for a normal human being to remember all
the instructions in the form of 0s and 1s.
Therefore, computers remained mystery to a common person until other
languages such as assembly language was developed, which were easier to
learn and understand.
Low-level language
Assembly language
 correspondences symbolic instructions and executable machine codes and
was created to use letters (called mnemonics) to each machine language
instructions to make it easier to remember or write.
For example:
 ADD A, B – adds two numbers in memory location A and B
However, no matter how close assembly language is to machine code,
computers still cannot understand it.
The assembly language must be translated to machine code by a separate
program called assembler.
The machine instruction created by the assembler from the original program
(source code) is called object code. Thus assembly languages are unique to a
specific computer (machine).
High-level Languages
 Use naturally understandable languages
 IDE’s are used for rapid development like C++, .Net environment
 they permitted a programmer to ignore many low-level details of the
computer's hardware.
 closer the syntax, rules, and mnemonics to "natural language“.
 High-level languages are more English-like and, therefore, make it
easier for programmers to "think" in the programming language.
High-level 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.
Interpreters are more interactive than compilers.
 E.g, FORTRAN (FORmula TRANslator), BASIC (Bingers All
Purpose Symbolic Instruction Code), PASCAL, C, C++, Java.
Programming paradigms
 Procedural Programming Languages
 Object-Oriented Programming Languages
Procedural Programming Languages
 is a list of instructions telling a computer, step-by-step, what to do, usually
having a linear order of execution from the first statement to the second
and so forth.
 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.
 Procedures, also known as functions, subroutines, or methods, are small
sections of code that perform a particular function.
 A procedure is effectively a list of computations to be carried out.
 By splitting the programmatic tasks into small pieces, procedural
programming allows a section of code to be re-used in the program
without making multiple copies.
 E.g. FORTRAN and BASIC.
Object-Oriented Programming Languages
 Object-oriented programming is one the newest and most powerful
paradigms.
 Object-oriented programming is a programming paradigms based
on the concept of objects, which are data structures that contains
data in the form of fields, known as attributes and code in the
form of procedures known as method.
 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.
Problem Solving Techniques
 Computer solves varieties of problems that can be expressed in a
finite number of steps leading to a precisely defined goal by
writing different programs. A program is not needed only to solve
a problem but also it should be reliable, (maintainable) portable
and efficient.
 In computer programming two facts are given more weight:
 The first part focuses on defining the problem and logical procedures
to follow in solving it.
 The second introduces the means by which programmers
communicate those procedures to the computer system so that it can
be executed.
Cont’d
 There are system analysis and design tools, particularly flowchart
and structure chart, that can be used to define the problem in terms
of the steps to its solution.
 The programmer uses programming language to communicate the
logic of the solution to the computer.
 Before a program is written, the programmer must clearly
understand what data are to be used, the desired result, and the
procedure to be used to produce the result.
 The procedure, or solution, selected is referred to as an 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.
Algorithms
 Simply, algorithm is a sequence of instructions.
 Algorithms are a fundamental part of computing.
 An algorithm must satisfy the following requirements:
 Unambiguousness: i.e. it must not be ambiguous. Every step in an
algorithm must be clear as to what it is supposed to do and how
many times it is expected to be executed.
 Generality: i.e. it should have to be general, not to be specific.
 Correctness: it must be correct and must solve the problem for
which it is designed.
 Finiteness: it must execute its steps and terminate in finite time.
 Algorithms are usually represented in pseudo code or by a flow chart.
Pseudocodes
 is English like language for representing the solution to a problem.
 Pseudo code is independent of any programming language. Pseudo code
(or a flow chart) is the first step in the process of planning the solution to a
problem (also called developing an algorithm).
 Pseudo code is a compact and informal high-level description of a
computer algorithm that uses the structural conventions of programming
languages, but typically omits details such as subroutines, variables
declarations and system-specific syntax.
 The purpose of using pseudocode is that it may be easier for humans to
read than conventional programming languages
 No standard for pseudocode syntax exists, as a program in pseudocode is
not an executable program.
Pseudocode
 As the name suggests, pseudocode generally does not actually obey the
synatx rules of any particular language; there is no systematic standard
form, although any particular writer will generally borrow the appearance
of a particular language.
 The programming process is a complicated one. You must first
understand the program specifications, of course, Then you need to
organize your thoughts and create the program.
 This is a difficult task when the program is not trivial (i.e. easy).
 You must break the main tasks that must be accomplished into smaller
ones in order to be able to eventually write fully developed code.
 Writing pseudocode will save you time later during the construction &
testing phase of a program's development.
Example:
 Original Program Specification:
 Write a program that obtains two integer numbers from the user. It will
print out the sum of those numbers.
 Pseudo code:
 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
• If student's grade is greater than or equal to 60
Print "passed"
else
Print "failed"
Flowcharts
 A flowchart is a graphical way of representing the solution to a
problem
 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.
Chapter 1- C++ programming languages +.ppt
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)
Chapter 1- C++ programming languages +.ppt
Example 2
 Write an pseudo code and draw a flow chart to check a number is
negative or not.
 Algorithm description.
1. Start
2. Read a number x
3. If x is less than zero then
Write “Negative”
Else
Write “Not Negative”
4. stop
Example 3
 Write the algorithm description (Pseudo code) and Draw flow chart of
an algorithm to find the following sum.
Sum = 1+2+3+…. + 50
 Algorithm description (Pseudo code)
1. Start
2. Initialize Sum to 0 and Counter to 1
2.1 If the Counter is less than or equal to 50
• Add Counter to Sum
• Increase Counter by 1
• Repeat step 2.1
2.2 Else
• Exit Loop
3. Write Sum
4. Stop
Chapter 1- C++ programming languages +.ppt
Exercise:
1. Write an algorithm description and draw a flow chart to check a
number is even or odd.

More Related Content

PPT
programming language(C++) chapter-one contd.ppt
PPTX
1.Overview of Programming.pptx
PPTX
1. C_Introductionnnnnnnnnnnnnnnnnnnnn.pptx
PPTX
UNIT 2 ECSE-2.pptx
PPTX
Chapter 5
PPTX
Software programming and development
PPTX
Computer program, computer languages, computer software
PPTX
Introduction to Computers Lecture # 12
programming language(C++) chapter-one contd.ppt
1.Overview of Programming.pptx
1. C_Introductionnnnnnnnnnnnnnnnnnnnn.pptx
UNIT 2 ECSE-2.pptx
Chapter 5
Software programming and development
Computer program, computer languages, computer software
Introduction to Computers Lecture # 12

Similar to Chapter 1- C++ programming languages +.ppt (20)

PPSX
Ic lecture8
PPTX
Lesson 1 - Introduction to Computer Programming.pptx
PPTX
Programming Paradigm & Languages
PPTX
Programming Paradigm & Languages
PDF
Introduction to computer programming language
PPTX
Programming C ppt for learning foundations
DOCX
SYSTEM DEVELOPMENT
PPTX
DOC
Stnotes doc 5
PPTX
Chapter 2.pptx
PPT
introduction to computer programming CPPL1.ppt
PPTX
Computer and programing basics.pptx
PPTX
Introduction to programming c
DOCX
PROBLEM SOLVING
PPTX
Programming _Language of Logic_ PPT.pptx
PDF
Introduction to programming language (basic)
PDF
Introduction to systems programming
PPTX
Programming str_Language of Logic/c.pptx
PPTX
PDF
computer Unit 6
Ic lecture8
Lesson 1 - Introduction to Computer Programming.pptx
Programming Paradigm & Languages
Programming Paradigm & Languages
Introduction to computer programming language
Programming C ppt for learning foundations
SYSTEM DEVELOPMENT
Stnotes doc 5
Chapter 2.pptx
introduction to computer programming CPPL1.ppt
Computer and programing basics.pptx
Introduction to programming c
PROBLEM SOLVING
Programming _Language of Logic_ PPT.pptx
Introduction to programming language (basic)
Introduction to systems programming
Programming str_Language of Logic/c.pptx
computer Unit 6
Ad

Recently uploaded (20)

PDF
Mitigating Risks through Effective Management for Enhancing Organizational Pe...
PPTX
Foundation to blockchain - A guide to Blockchain Tech
PDF
Model Code of Practice - Construction Work - 21102022 .pdf
PDF
Well-logging-methods_new................
PPTX
additive manufacturing of ss316l using mig welding
PPTX
Geodesy 1.pptx...............................................
PPTX
UNIT 4 Total Quality Management .pptx
PPTX
Safety Seminar civil to be ensured for safe working.
PDF
TFEC-4-2020-Design-Guide-for-Timber-Roof-Trusses.pdf
PDF
Mohammad Mahdi Farshadian CV - Prospective PhD Student 2026
PPTX
FINAL REVIEW FOR COPD DIANOSIS FOR PULMONARY DISEASE.pptx
PDF
R24 SURVEYING LAB MANUAL for civil enggi
PPT
Introduction, IoT Design Methodology, Case Study on IoT System for Weather Mo...
PPTX
OOP with Java - Java Introduction (Basics)
PPTX
Engineering Ethics, Safety and Environment [Autosaved] (1).pptx
PDF
PRIZ Academy - 9 Windows Thinking Where to Invest Today to Win Tomorrow.pdf
PDF
SM_6th-Sem__Cse_Internet-of-Things.pdf IOT
DOCX
573137875-Attendance-Management-System-original
PDF
Unit I ESSENTIAL OF DIGITAL MARKETING.pdf
PDF
PPT on Performance Review to get promotions
Mitigating Risks through Effective Management for Enhancing Organizational Pe...
Foundation to blockchain - A guide to Blockchain Tech
Model Code of Practice - Construction Work - 21102022 .pdf
Well-logging-methods_new................
additive manufacturing of ss316l using mig welding
Geodesy 1.pptx...............................................
UNIT 4 Total Quality Management .pptx
Safety Seminar civil to be ensured for safe working.
TFEC-4-2020-Design-Guide-for-Timber-Roof-Trusses.pdf
Mohammad Mahdi Farshadian CV - Prospective PhD Student 2026
FINAL REVIEW FOR COPD DIANOSIS FOR PULMONARY DISEASE.pptx
R24 SURVEYING LAB MANUAL for civil enggi
Introduction, IoT Design Methodology, Case Study on IoT System for Weather Mo...
OOP with Java - Java Introduction (Basics)
Engineering Ethics, Safety and Environment [Autosaved] (1).pptx
PRIZ Academy - 9 Windows Thinking Where to Invest Today to Win Tomorrow.pdf
SM_6th-Sem__Cse_Internet-of-Things.pdf IOT
573137875-Attendance-Management-System-original
Unit I ESSENTIAL OF DIGITAL MARKETING.pdf
PPT on Performance Review to get promotions
Ad

Chapter 1- C++ programming languages +.ppt

  • 2. Introduction  What is a computer?  A Computer is an electronic device that accepts data, performs computations, and makes logical decisions according to instructions that have been given to it; then produces meaningful information in a form that is useful to the user. Inputs Process Outputs
  • 3. What is a program?  Computer programs, software programs, or just programs are the instructions that tells the computer what to do.  Computer programming (programming or coding) is the process of writing, testing, debugging/troubleshooting, and maintaining the source code of computer programs
  • 4. Intro  A computer program consists of two elements:  Code – action  Data – characteristics  Computer programs (also know as source code) is often written by professionals known as Computer Programmers. Source code is written in one of programming languages.
  • 5. Programming language  A programming language is an artificial language that can be used to control the behavior of a machine, particularly a computer.  Programming languages, like natural language, are defined by syntactic and semantic rules which describe their structure and meaning respectively.  The syntax of a language describes the possible combinations of symbols that form a syntactically correct program.  The meaning given to a combination of symbols is handled by semantics.
  • 6. Programming language  A main purpose of programming languages is to provide instructions to a computer.  Available programming languages come in a variety of forms and types.  Programming languages can be divided in to two major categories:  Low-level languages  High-level languages
  • 7. Low-level Languages Machine language It is the lowest level programming language in which all instructions and data are written in a binary machine code, i.e. 0s and 1s. Computers only understand one language and that is binary language or the language of 1s and 0s. For example: 00101010 000000000001 000000000010 10011001 000000000010 000000000011 In the initial years of computer programming, all the instructions were given in binary form. Although the computer easily understood these programs, it proved too difficult for a normal human being to remember all the instructions in the form of 0s and 1s. Therefore, computers remained mystery to a common person until other languages such as assembly language was developed, which were easier to learn and understand.
  • 8. Low-level language Assembly language  correspondences symbolic instructions and executable machine codes and was created to use letters (called mnemonics) to each machine language instructions to make it easier to remember or write. For example:  ADD A, B – adds two numbers in memory location A and B However, no matter how close assembly language is to machine code, computers still cannot understand it. The assembly language must be translated to machine code by a separate program called assembler. The machine instruction created by the assembler from the original program (source code) is called object code. Thus assembly languages are unique to a specific computer (machine).
  • 9. High-level Languages  Use naturally understandable languages  IDE’s are used for rapid development like C++, .Net environment  they permitted a programmer to ignore many low-level details of the computer's hardware.  closer the syntax, rules, and mnemonics to "natural language“.  High-level languages are more English-like and, therefore, make it easier for programmers to "think" in the programming language.
  • 10. High-level 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. Interpreters are more interactive than compilers.  E.g, FORTRAN (FORmula TRANslator), BASIC (Bingers All Purpose Symbolic Instruction Code), PASCAL, C, C++, Java.
  • 11. Programming paradigms  Procedural Programming Languages  Object-Oriented Programming Languages
  • 12. Procedural Programming Languages  is a list of instructions telling a computer, step-by-step, what to do, usually having a linear order of execution from the first statement to the second and so forth.  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.  Procedures, also known as functions, subroutines, or methods, are small sections of code that perform a particular function.  A procedure is effectively a list of computations to be carried out.  By splitting the programmatic tasks into small pieces, procedural programming allows a section of code to be re-used in the program without making multiple copies.  E.g. FORTRAN and BASIC.
  • 13. Object-Oriented Programming Languages  Object-oriented programming is one the newest and most powerful paradigms.  Object-oriented programming is a programming paradigms based on the concept of objects, which are data structures that contains data in the form of fields, known as attributes and code in the form of procedures known as method.  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.
  • 14. Problem Solving Techniques  Computer solves varieties of problems that can be expressed in a finite number of steps leading to a precisely defined goal by writing different programs. A program is not needed only to solve a problem but also it should be reliable, (maintainable) portable and efficient.  In computer programming two facts are given more weight:  The first part focuses on defining the problem and logical procedures to follow in solving it.  The second introduces the means by which programmers communicate those procedures to the computer system so that it can be executed.
  • 15. Cont’d  There are system analysis and design tools, particularly flowchart and structure chart, that can be used to define the problem in terms of the steps to its solution.  The programmer uses programming language to communicate the logic of the solution to the computer.  Before a program is written, the programmer must clearly understand what data are to be used, the desired result, and the procedure to be used to produce the result.  The procedure, or solution, selected is referred to as an 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.
  • 16. Algorithms  Simply, algorithm is a sequence of instructions.  Algorithms are a fundamental part of computing.  An algorithm must satisfy the following requirements:  Unambiguousness: i.e. it must not be ambiguous. Every step in an algorithm must be clear as to what it is supposed to do and how many times it is expected to be executed.  Generality: i.e. it should have to be general, not to be specific.  Correctness: it must be correct and must solve the problem for which it is designed.  Finiteness: it must execute its steps and terminate in finite time.  Algorithms are usually represented in pseudo code or by a flow chart.
  • 17. Pseudocodes  is English like language for representing the solution to a problem.  Pseudo code is independent of any programming language. Pseudo code (or a flow chart) is the first step in the process of planning the solution to a problem (also called developing an algorithm).  Pseudo code is a compact and informal high-level description of a computer algorithm that uses the structural conventions of programming languages, but typically omits details such as subroutines, variables declarations and system-specific syntax.  The purpose of using pseudocode is that it may be easier for humans to read than conventional programming languages  No standard for pseudocode syntax exists, as a program in pseudocode is not an executable program.
  • 18. Pseudocode  As the name suggests, pseudocode generally does not actually obey the synatx rules of any particular language; there is no systematic standard form, although any particular writer will generally borrow the appearance of a particular language.  The programming process is a complicated one. You must first understand the program specifications, of course, Then you need to organize your thoughts and create the program.  This is a difficult task when the program is not trivial (i.e. easy).  You must break the main tasks that must be accomplished into smaller ones in order to be able to eventually write fully developed code.  Writing pseudocode will save you time later during the construction & testing phase of a program's development.
  • 19. Example:  Original Program Specification:  Write a program that obtains two integer numbers from the user. It will print out the sum of those numbers.  Pseudo code:  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 • If student's grade is greater than or equal to 60 Print "passed" else Print "failed"
  • 20. Flowcharts  A flowchart is a graphical way of representing the solution to a problem  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.
  • 22. 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)
  • 24. Example 2  Write an pseudo code and draw a flow chart to check a number is negative or not.
  • 25.  Algorithm description. 1. Start 2. Read a number x 3. If x is less than zero then Write “Negative” Else Write “Not Negative” 4. stop
  • 26. Example 3  Write the algorithm description (Pseudo code) and Draw flow chart of an algorithm to find the following sum. Sum = 1+2+3+…. + 50  Algorithm description (Pseudo code) 1. Start 2. Initialize Sum to 0 and Counter to 1 2.1 If the Counter is less than or equal to 50 • Add Counter to Sum • Increase Counter by 1 • Repeat step 2.1 2.2 Else • Exit Loop 3. Write Sum 4. Stop
  • 28. Exercise: 1. Write an algorithm description and draw a flow chart to check a number is even or odd.