Professional Documents
Culture Documents
Recommended Textbook(s) 1. C++ How to Program by Deitel and Deitel, 10th Edition, Pearson (2016)
Referenced Books 1. Starting out with Python, Tony Gaddis, Pearson; 4th edition (2017)
2. Starting out with Programming Logic & Designs, Tony Gaddis, Pearson; 4th
edition (2015)
3. Introduction to Computation and Programming Using Python: With
Application to Understanding Data, 2nd Edition by Guttag, John, MIT Press;
2nd edition (2016)
4. Practice of Computing Using Python by William Punch & Richard Enbody,
Pearson; 2nd edition (2012)
5. A first book of C++, Garry Bronson, 4th edition, Cengage Learning (2011)
Computer
Memory Cell
Address of a memory cell
Contents of a memory cell
Stored Program Concept
RAM
ROM
Anatomy of Memory Contd.
Address of a memory cell the relative position of a memory cell in the computer’s
main memory
Stored Program Concept instructions are represented in binary form and stored in
computer for execution.
Read Only Memory (ROM) is non volatile memory. Data is permanently written and
is not erased when you power off your computer.
Computer Languages
C++
Java
High Level Languages
Example
Interpreter Compiler
Interpreter converts a program into machine Compiler converts a program into machine code
code statement by statement as a whole
Interpreter does not create object code file Complier creates object code file
Interpreter converts high level program each Complier converts high level program that can
time it is executed be executed many times.
Interpreter displays the syntax error on each Compiler displays syntax errors after compiling
statement of program. the whole program.
Interpreter & Compiler
Entering, Translating & Running a
High Level Language Program
Linker & Loader
Linker Loader
It generates the executable module of a source It loads the executable module to the main memory.
program
It takes as input, the object code generated by a It takes executable module generated by a linker.
compiler.
It combines all the object modules of a source It allocates the addresses to an executable module in
code to generate an executable module. main memory for execution.
Problem Solving
Process of identifying a problem and finding the best solution for it.
Different strategies, techniques and tools are used to solve a problem.
Computers are used as a tool to solve complex problems by developing computer
programs
Problem Solving Activities in Daily Life
To get admission in BS
Program
Flowchart
etc.
Program
Process of writing a computer program in a language the computer can respond to and other
programmers can understand.
The set of instructions, data, and rules used to construct a program is called a programming
language.
Advantages of Computer Program
It is used to specify program logic in an English like manner that is independent of any
programming language.
Algorithmic Solution
Sequence of actions to perform a task
Heuristic Solution
Require reasoning built on knowledge and experience.
Solutions that cannot be reached through a direct set of steps.
e.g. How to buy the best stock?
Example
Solution:
1 Start
2 Enter number1
3 Enter number2
4 Result = number1 + number2
5 Display Result
6 End
References
Gary j. Bronson, A first book of C++, Garry Bronson, 4th edition (Section 1.1 of Chapter
1)
Maureen Sprankle et al, Problem Solving and Programming Concepts, 9th Ed. Prentice
Hall, 2011. (Chapter 1 + All the related topics of Flowchart and algorithms in book)