SlideShare a Scribd company logo
Computer Programming
Day 1
- Ijasali Manalody
Relevance of computer Programming
• To automate tasks done by Humans
Hard Work
Difficult to
generate reports
Delay in
handling bulk
data
Easy to
Maintain
Single click for
reports
Can handle
any amount
of data
What is programming?
• Series of instructions to a computer to accomplish a task;
– Same like instructions given to human to perform a task
• Eg : Go straight , Take right etc
• Group of instructions will make a program to perform that particular task
Group of instructions to make Tea is,
Instruction 1 : Boil Water
Instruction 2 : Put Tea powder
Instruction 3 : Put Sugar
Group of instructions
make a program
How to give instructions to computer?
• Instructions must be written in a way the computer can
understand
漢鼎 31 繁 81 印篆
?????
Add 31 and 81
????
Language of Computer
• Computer only understands Machine language which is of 0 and 1
• So any instructions to computer must be of Machine Language
Mother Board
How does a Computer program get executed?
Instruction Address
11011110 00110000
00010010 00110001
10000000 00001010
01001000 10000001
00001100 10000100
11000001 00101011
01011011 01011001
11101011 11111000
Ram
Loads instruction for execution
CPU
Ram
Example
Machine
Instruction
Machine Operation
0000 0000 Stop
0000 0001 Rotate bristles left
0000 0010
Rotate bristles
right
0000 0100
Go back to start of
program
• Let us say that an electric toothbrush has a processor and main memory.
• The processor can rotate the bristles left and right, and can check the on/off switch
Addr
ess
Machine
Instructions
0 0000 0001
1 0000 0010
2 0000 0100
3
4
Types of Languages
• Machine level Languages
• Machine language programs were made up of instructions written in binary
code.
• This is the “native” language of the computer.
• Assembly Level Languages
• Assembly language programs are made up of instructions written in
mnemonics.(Uses convenient alphabetic abbreviations to represent instructions)
• High Level Languages
• Use statements that resemble English phrases combined with mathematical
terms needed to express the problem or task being programmed.
“All programs must be translated to Machine language
before their instructions can be executed ”
Assembler
• Assembled languages:
– Assembler: a program used to translate Assembly language programs.
– Produces one line of binary code per original program statement.
– The entire program is assembled before the program is sent to the
computer for execution.
......
clc
add ax,bx
mov di,
offset result
.....
Assembler
......
01010101
01010101
......
Compiler
– Compiler is a program used to translate high-level programs into
Machine level program.
– It translates the entire program into binary code before anything is sent
to the CPU for execution.
......
c=a+b ;
Print a;
......
Compiler
......
01010101
01010101
......
Interpreter
• Interpreted Languages:
– Interpreter: A program used to translate high-level programs.
– Translates one line of the program into binary code at a time:
• An instruction is fetched from the original source code.
• The Interpreter checks the single instruction for errors. (If an error is found,
translation and execution ceases. Otherwise…)
• The instruction is translated into binary code.
• The binary coded instruction is executed.
• The fetch and execute process repeats for the entire program.
......
c=a+b ;
Print a;
......
Interpretor
......
01010101
01010101
......
Compiler Vs Interpreter
• Takes Entire Program as input
• Intermediate object code is generated
• Program need not be compiled every
time we run the program
• Errors are displayed after entire
program is checked
• Example : C compiler
• Takes Single instruction as input
• No intermediate object code is
generated
• Every time we run the program it will
be converted to low level
program(interpreted)
• Errors are displayed after every
instruction interpreted
• Example : BASIC, PHP interpreter
Programming languages Vs Scripting Languages
• Some programming languages (like Java or C++) require the code
to be compiled (translated to binary) before it can be started.
• Others (like JavaScript,PHP) are interpreted, meaning that each
command is translated separately when the program is started.
How to write a program?
Step 1: Decide what steps are needed to complete the task !
Step 2: Write the steps as Algorithms(written in English) or as a flowchart
(graphic symbols)
Step 3: Translate into the programming language
Step 4: Try out the program and “debug” it (fix if necessary)
What is Algorithms?
• List of steps written in English
• Like the instructions for a recipe
• Must be in the right sequence
– Imagine saying “put the tea powder” and then “take water and boil”
Sample Algorithm
• Task: add two numbers
• Algorithm:
– Start
– Get two numbers
– Add them
– Print the answer
– End
What does a flowchart look like?
• The algorithm from the previous slide would look like this as a
flowchart: Start
Get 2 numbers
Add them
Print answer
End
What are those symbols?
• START/END
• INPUT/OUTPUT
• PROCESS
• DECISION
What are those symbols?
• START/END
• Used at the beginning and end of each flowchart.
What are those symbols?
• INPUT/OUTPUT
• Shows when information/data comes into a program or is
printed out.
What are those symbols?
• PROCESS
• Used to show calculations, storing of data in variables, and other
“processes” that take place within a program.
What are those symbols?
• DECISION
• Used to show that the program must decide whether something (usually a
comparison between numbers) is true or false. YES and NO (or T/F)
branches are usually shown.
Y
N
X>7?
Another Sample: Calculating Age
• Algorithm:
– Start
– Get year born
– Calculate age
– Print age
– If age > 50 print OLD
– End
Another Sample: Calculating Age
Get yr
Calc age
Print age
Age>50?OLD Y
N
Start
End
Questions?
“A good question deserve a good grade…”
Self Check !!
Self-Check
• A computer program is…
– A series of instructions to accomplish something
– Written in High level language
– Written in machine language
– All of the above
Self-Check
• A computer program is…
– A series of instructions to accomplish something
– Written in High level language
– Written in machine language
– All of the above
Self-Check
• To “compile” a program means to…
– Translate it into mnemonics
– Translate it into binary code
– Executes the program
– Run the program instruction
• To “compile” a program means to…
– Translate it into mnemonics
– Translate it into binary code
– Executes the program
– Run the program instruction
Self-Check
Self-Check
• Algorithm is…
– The program as it is written in a programming language
– The results of a program that makes secret codes
– The logic of a program written in English
– The logic of a program shown in a chart
• Algorithm is…
– The program as it is written in a programming language
– The results of a program that makes secret codes
– The logic of a program written in English
– The logic of a program shown in a chart
Self-Check
Self-Check
• The flowchart symbol to perform a calculation is…
Self-Check
• The flowchart symbol to perform a calculation is…
Self-Check
• The flowchart symbol to perform a Decision is…
• The flowchart symbol to perform a Decision is…
Self-Check
Self-Check
• Look at the flowchart section below. If the variable X is 5, what
will print (K or 1st)?
X > 5?
YN
Print “1st”Print “K”
Self-Check
• Look at the flowchart section below. If the variable X is 5, what
will print (K or 1st)?
X > 5?
YN
Print “1st”Print “K”
K will be printed. The answer to the question “Is X greater than 5?”
is NO, since X is equal to (not greater than) 5.
Self-Check
• Choose the correct
flowchart symbol for each
of these statements.
• AGE>65?
• Calc. Tax
• START
• Print NAME
Self-Check
• Choose the correct
flowchart symbol for each
of these statements.
• AGE>65?
• Calc. Tax
• START
• Print NAME
“End of Day 1”
Check list Day1
• Relevance of Computer programming
• Instructions are loaded into ____
• Instructions are executed by ____
• Assembly level Language Vs Machine level language Vs
High level language
• Assembler Vs compiler Vs interpreter
Elements of a Program
Day 2
How does human perform simple task; for Eg: add 456 and 44
Add 456
and 44 500
How does human perform simple task; Eg: add 456 and 44
1 We Hear it through our input senses
2 We store the numbers 456 and 44 in our memory
456
44
456+44 3 We calculate the result in our brain and store it in
memory
500
3 We say the answer through our output senses
1 Computer use keyboard to receive inputs
2 Computer store the numbers 456 and 44 in Ram
456
44
456+44
3
Computer calculate the result in CPU (ALU within
CPU) and stores result back in ram
500
4 Computer use monitor to display outputs
How does computer perform simple task; Eg: add 456 and 44
Elements of a Program
• During programming we may need to do the following
– Stores Data temporarily
– Control the normal flow of instruction execution
– Repeat one or more instructions several time
– Repeat group of instructions at several parts of program
Elements of a Program
• During programming we may need come across following situations
– Stores Data temporarily - Variables
– Control the normal flow of instruction execution - Decisions
– Repeat one or more instructions several time - Loops
– Repeat particular instructions at several parts of program - Functions
Variables
N Y
Start
i=1
If
i<100
Print iStop
Print all the numbers up to 100
i=i+1
N Y
Start
i=1
If
i<100
Print iStop
Print all the numbers upto 100
i=i+1
1i
Ram
• Variables are part of almost every program.
• A variable is a “place to put data” and is usually represented by a letter
or a word. (Think of a variable as a Tupperware container with a
label on it.)
• Variable names cannot contain spaces.
R
A
M
Variables
A B c
Variables
• The most common way to put information into a variable is to use the
equal sign (=).
• Eg a=10;
• C = A + 7 means take the value of A, add 7, and put it into C.
• COUNT=COUNT + 2 means take the current value of COUNT, add
2 to it, and make it the new value of COUNT.
Variables
• Sometimes you must specify the type of data that will be placed in a
variable.
• Here are some examples of data types:
– String (text, “strings of letters”)
– Integer (whole numbers)
– Float(decimal numbers)
– Boolean (true/false)
Variables
• Variables may be classified as global or local.
• A global variable is one that can be shared by all parts of a program,
including any functions or sub-programs.
• A local variable is one that is used only within a certain part of the
program, for example, only in one function or sub-program.
Decisions
N Y
Start
i=1
If
i<100
Print iStop
Print all the numbers up to 100
i=i+1
Decisions
• A program often needs to decide whether something is true or
false in order to see which way to continue.
• Programs often use IF (or IF or IF ELSE) statements to show a
decision.
Decisions
• An IF statement always has a condition to check, often a
comparison between a variable and a number.
• The IF statement also must specify what to do if the
condition/comparison is true.
Decisions
• In an IF statement, when the condition is false, the program
simply ignores the commands within IF and continues to the next
line.
• In an IF ELSE statement, commands are given for both the true
and false conditions.
Loops
N Y
Start
i=1
If
i<100
Print iStop
Print all the numbers up to 100
i=i+1
Loops
• A loop is a repetition of all or part of the commands in a program.
• A loop often has a counter (a variable) and continues to repeat a
specified number of times.
• A loop may also continue until a certain condition is met (e.g.,
until the end of a file or until a number reaches a set limit)
Functions
Print all the numbers up to 100
N Y
Start
i=1
If
i<
10
0
Print iStop
i=i+1
Start
STOP
Functions
• In most programming languages, small sub-programs are used to
perform some of the tasks.
• These may be called functions, subroutines, handlers, or other such
terms.
• Functions often have names (e.g., getName or CALCTAX).
Functions
• A function generally gets information from the main program,
performs some task, and returns information back to the program.
• Functions follow the same rules of syntax, etc. as the main program.
Hints for Writing Code
• “Code” means writing the program in the appropriate language
• Be sure the code is exact (spelling, capitals/lower case,
punctuation, etc).
• Write part of the code, try it, then write more.
Debugging
• To “debug” means to try a program, then fix any mistakes.
• Virtually no program works the first time you run it. There are just too
many places to make errors.
• When you are debugging a program, look for spelling and punctuation
errors.
• Fix one error at a time, then try the program again.
Questions?
“A good question deserve a good grade…”
Self Check !!
Self-Check
• A function in a program is…
– Something from trigonometry, like COSINE
– A sub-program, usually performing one task
– A way to check the accuracy of a program (a “function check”)
• A function in a program is…
– Something that stores a value
– A sub-program, usually performing one task
– A way to check the accuracy of a program (a “function check”)
Self-Check
Self-Check
• A variable in a program is…
– A letter or word that represents a place to store data
– A decision made within a program
– A small sub-program used to find errors
Self-Check
• A variable in a program is…
– A letter or word that represents a place to store data
– A decision made within a program
– A small sub-program used to find errors
• A global variable in a program is…
– Store data Permanently
– Store Data that can not be accessed from functions
– Store data than can be accessed from anywhere in the program
Self-Check
• A global variable in a program is…
– Store data Permanently
– Store Data that can not be accessed from functions
– Store data than can be accessed from anywhere in the program
Self-Check
• A loop is used in a program when…
– One or more instructions repeats at several part of the program
– You want to skip particular instructions
– You want to repeat particular instructions until a condition to satisfy
– All of the above
Self-Check
• A loop is used in a program when…
– One or more instructions repeats at several part of the program
– You want to skip particular instructions
– You want to repeat particular instructions until a condition to satisfy
– All of the above
Self-Check
“End of Day 2”
Ad

Recommended

Programming Language
Programming Language
Education Front
 
Computer Programming Overview
Computer Programming Overview
agorolabs
 
An overview of computers and programming languages
An overview of computers and programming languages
Ahmad Idrees
 
Introduction to computing
Introduction to computing
Muhammad Yousuf Abdul Qadir
 
Theory of programming
Theory of programming
tcc_joemarie
 
Computer Programming
Computer Programming
Syed Zaid Irshad
 
Chapter 1 - An Introduction to Programming
Chapter 1 - An Introduction to Programming
mshellman
 
Algorithm and flowchart
Algorithm and flowchart
Elizabeth de Leon Aler
 
Computer programming
Computer programming
Mohamed Asarudeen
 
Programming languages
Programming languages
Asmasum
 
How to Work with Dev-C++
How to Work with Dev-C++
Deepak Jha
 
Introduction to Flowchart
Introduction to Flowchart
ChristopherEsteban2
 
COMPUTER PROGRAMMING
COMPUTER PROGRAMMING
imtiazalijoono
 
Booting & shut down,
Booting & shut down,
Bhushan Pawar -Java Trainer
 
Programming Fundamentals
Programming Fundamentals
Trivuz ত্রিভুজ
 
software development and programming languages
software development and programming languages
PraShant Kumar
 
Introduction to Computer Programming
Introduction to Computer Programming
Amity University | FMS - DU | IMT | Stratford University | KKMI International Institute | AIMA | DTU
 
Computer Languages.
Computer Languages.
Aditya Sheoran
 
Introduction to computer programming
Introduction to computer programming
Sangheethaa Sukumaran
 
Programming Paradigm & Languages
Programming Paradigm & Languages
Gaditek
 
CHROME OS.pptx
CHROME OS.pptx
PREMPRASAD34
 
Software programming and development
Software programming and development
Ali Raza
 
Lecture 1- History of C Programming
Lecture 1- History of C Programming
Md. Imran Hossain Showrov
 
Presentation of programming languages for beginners
Presentation of programming languages for beginners
Clement Levallois
 
Programming Fundamental Slide No.1
Programming Fundamental Slide No.1
Arslan Hussain
 
Programacion MODULAR
Programacion MODULAR
gnurisvertilia
 
Introduction to Programming Languages
Introduction to Programming Languages
educationfront
 
Cocomo model
Cocomo model
ZunairaIshtiaq2
 
Tutorials--The Language of Math--Variable Expressions--Multiplication and Sub...
Tutorials--The Language of Math--Variable Expressions--Multiplication and Sub...
Media4math
 
A simple study on computer algorithms by S. M. Risalat Hasan Chowdhury
A simple study on computer algorithms by S. M. Risalat Hasan Chowdhury
S. M. Risalat Hasan Chowdhury
 

More Related Content

What's hot (20)

Computer programming
Computer programming
Mohamed Asarudeen
 
Programming languages
Programming languages
Asmasum
 
How to Work with Dev-C++
How to Work with Dev-C++
Deepak Jha
 
Introduction to Flowchart
Introduction to Flowchart
ChristopherEsteban2
 
COMPUTER PROGRAMMING
COMPUTER PROGRAMMING
imtiazalijoono
 
Booting & shut down,
Booting & shut down,
Bhushan Pawar -Java Trainer
 
Programming Fundamentals
Programming Fundamentals
Trivuz ত্রিভুজ
 
software development and programming languages
software development and programming languages
PraShant Kumar
 
Introduction to Computer Programming
Introduction to Computer Programming
Amity University | FMS - DU | IMT | Stratford University | KKMI International Institute | AIMA | DTU
 
Computer Languages.
Computer Languages.
Aditya Sheoran
 
Introduction to computer programming
Introduction to computer programming
Sangheethaa Sukumaran
 
Programming Paradigm & Languages
Programming Paradigm & Languages
Gaditek
 
CHROME OS.pptx
CHROME OS.pptx
PREMPRASAD34
 
Software programming and development
Software programming and development
Ali Raza
 
Lecture 1- History of C Programming
Lecture 1- History of C Programming
Md. Imran Hossain Showrov
 
Presentation of programming languages for beginners
Presentation of programming languages for beginners
Clement Levallois
 
Programming Fundamental Slide No.1
Programming Fundamental Slide No.1
Arslan Hussain
 
Programacion MODULAR
Programacion MODULAR
gnurisvertilia
 
Introduction to Programming Languages
Introduction to Programming Languages
educationfront
 
Cocomo model
Cocomo model
ZunairaIshtiaq2
 
Programming languages
Programming languages
Asmasum
 
How to Work with Dev-C++
How to Work with Dev-C++
Deepak Jha
 
software development and programming languages
software development and programming languages
PraShant Kumar
 
Introduction to computer programming
Introduction to computer programming
Sangheethaa Sukumaran
 
Programming Paradigm & Languages
Programming Paradigm & Languages
Gaditek
 
Software programming and development
Software programming and development
Ali Raza
 
Presentation of programming languages for beginners
Presentation of programming languages for beginners
Clement Levallois
 
Programming Fundamental Slide No.1
Programming Fundamental Slide No.1
Arslan Hussain
 
Introduction to Programming Languages
Introduction to Programming Languages
educationfront
 

Viewers also liked (20)

Tutorials--The Language of Math--Variable Expressions--Multiplication and Sub...
Tutorials--The Language of Math--Variable Expressions--Multiplication and Sub...
Media4math
 
A simple study on computer algorithms by S. M. Risalat Hasan Chowdhury
A simple study on computer algorithms by S. M. Risalat Hasan Chowdhury
S. M. Risalat Hasan Chowdhury
 
Flowcharts
Flowcharts
Mukesh Tekwani
 
Inventions: The computer
Inventions: The computer
andreasupertino
 
Nuclear power
Nuclear power
Aparna
 
On The Day the Last Nuclear Weapon is Destroyed
On The Day the Last Nuclear Weapon is Destroyed
kenleybutler
 
Topic 1 intro power and ideas
Topic 1 intro power and ideas
Hafidz Haron
 
Algorithms Vs Meta Language
Algorithms Vs Meta Language
Kelly Bauer
 
D3 (drought management and risk reduction in pakistan) brig. kamran shariff
D3 (drought management and risk reduction in pakistan) brig. kamran shariff
muneeb khalid khalid muneeb
 
Nuclear power plant
Nuclear power plant
Pankaj Kumar Nayak
 
fortigate
fortigate
guest2b77e4
 
Golda Meir And Arab Israeli Relations 35 Years After[1]
Golda Meir And Arab Israeli Relations 35 Years After[1]
Hackelmeier_Library
 
Topic.09 The Civil Rights Movement
Topic.09 The Civil Rights Movement
mr.meechin
 
WWI 5 Weapons
WWI 5 Weapons
WorldHistoryPresentations.Blogspot.com
 
Cold war Photo Essay World History
Cold war Photo Essay World History
TorresTroll
 
The Invention of Nuclear Weapons
The Invention of Nuclear Weapons
kryackey
 
27 NP Completness
27 NP Completness
Andres Mendez-Vazquez
 
Egypt
Egypt
smileyjimenez
 
Chapter9
Chapter9
Dang Tuan
 
A global picture of drought occurrence, magnitude, and preparedness
A global picture of drought occurrence, magnitude, and preparedness
International Water Management Institute (IWMI)
 
Tutorials--The Language of Math--Variable Expressions--Multiplication and Sub...
Tutorials--The Language of Math--Variable Expressions--Multiplication and Sub...
Media4math
 
A simple study on computer algorithms by S. M. Risalat Hasan Chowdhury
A simple study on computer algorithms by S. M. Risalat Hasan Chowdhury
S. M. Risalat Hasan Chowdhury
 
Inventions: The computer
Inventions: The computer
andreasupertino
 
Nuclear power
Nuclear power
Aparna
 
On The Day the Last Nuclear Weapon is Destroyed
On The Day the Last Nuclear Weapon is Destroyed
kenleybutler
 
Topic 1 intro power and ideas
Topic 1 intro power and ideas
Hafidz Haron
 
Algorithms Vs Meta Language
Algorithms Vs Meta Language
Kelly Bauer
 
D3 (drought management and risk reduction in pakistan) brig. kamran shariff
D3 (drought management and risk reduction in pakistan) brig. kamran shariff
muneeb khalid khalid muneeb
 
Golda Meir And Arab Israeli Relations 35 Years After[1]
Golda Meir And Arab Israeli Relations 35 Years After[1]
Hackelmeier_Library
 
Topic.09 The Civil Rights Movement
Topic.09 The Civil Rights Movement
mr.meechin
 
Cold war Photo Essay World History
Cold war Photo Essay World History
TorresTroll
 
The Invention of Nuclear Weapons
The Invention of Nuclear Weapons
kryackey
 
Ad

Similar to Algorithms - Introduction to computer programming (20)

introduction to problem solving and programming
introduction to problem solving and programming
chaudhariresham6
 
Programming
Programming
Leo Simon Anfone
 
programming.ppt
programming.ppt
AdrianVANTOPINA
 
Programming Fundamentals - Lecture 1.ppt
Programming Fundamentals - Lecture 1.ppt
FarhanGhafoor7
 
01 Programming Fundamentals.pptx
01 Programming Fundamentals.pptx
JustineLincopinesAlm
 
L1. Basic Programming Concepts.pdf
L1. Basic Programming Concepts.pdf
MMRF2
 
Programming requirements for beginning in software engineering.pptx
Programming requirements for beginning in software engineering.pptx
TeddyDaka
 
Unit 1. Problem Solving with Computer
Unit 1. Problem Solving with Computer
Ashim Lamichhane
 
programming language(C++) chapter-one contd.ppt
programming language(C++) chapter-one contd.ppt
Fuadsabseb
 
Basic Computer Programming
Basic Computer Programming
Allen de Castro
 
Cs1123 2 comp_prog
Cs1123 2 comp_prog
TAlha MAlik
 
Introduction to object oriented programming.pptx
Introduction to object oriented programming.pptx
BINJAD1
 
Unit 2 - Complete (1).pptx
Unit 2 - Complete (1).pptx
gogulram2
 
PROBLEM SOLVING.pptx
PROBLEM SOLVING.pptx
sumathysenthilkumar
 
Lecture-1.pptx . this is about the computer program
Lecture-1.pptx . this is about the computer program
MuhammadUsmanYaseen2
 
Unit 1 program development cycle
Unit 1 program development cycle
Dhana malar
 
02 Algorithms and flowcharts - computers.pptx
02 Algorithms and flowcharts - computers.pptx
arifaqazi2
 
Cse
Cse
Yashitha11
 
Pj01 1-computer and programming fundamentals
Pj01 1-computer and programming fundamentals
SasidharaRaoMarrapu
 
CHAPTER-1.ppt
CHAPTER-1.ppt
Tekle12
 
introduction to problem solving and programming
introduction to problem solving and programming
chaudhariresham6
 
Programming Fundamentals - Lecture 1.ppt
Programming Fundamentals - Lecture 1.ppt
FarhanGhafoor7
 
L1. Basic Programming Concepts.pdf
L1. Basic Programming Concepts.pdf
MMRF2
 
Programming requirements for beginning in software engineering.pptx
Programming requirements for beginning in software engineering.pptx
TeddyDaka
 
Unit 1. Problem Solving with Computer
Unit 1. Problem Solving with Computer
Ashim Lamichhane
 
programming language(C++) chapter-one contd.ppt
programming language(C++) chapter-one contd.ppt
Fuadsabseb
 
Basic Computer Programming
Basic Computer Programming
Allen de Castro
 
Cs1123 2 comp_prog
Cs1123 2 comp_prog
TAlha MAlik
 
Introduction to object oriented programming.pptx
Introduction to object oriented programming.pptx
BINJAD1
 
Unit 2 - Complete (1).pptx
Unit 2 - Complete (1).pptx
gogulram2
 
Lecture-1.pptx . this is about the computer program
Lecture-1.pptx . this is about the computer program
MuhammadUsmanYaseen2
 
Unit 1 program development cycle
Unit 1 program development cycle
Dhana malar
 
02 Algorithms and flowcharts - computers.pptx
02 Algorithms and flowcharts - computers.pptx
arifaqazi2
 
Pj01 1-computer and programming fundamentals
Pj01 1-computer and programming fundamentals
SasidharaRaoMarrapu
 
CHAPTER-1.ppt
CHAPTER-1.ppt
Tekle12
 
Ad

More from baabtra.com - No. 1 supplier of quality freshers (20)

Agile methodology and scrum development
Agile methodology and scrum development
baabtra.com - No. 1 supplier of quality freshers
 
Best coding practices
Best coding practices
baabtra.com - No. 1 supplier of quality freshers
 
Core java - baabtra
Core java - baabtra
baabtra.com - No. 1 supplier of quality freshers
 
Acquiring new skills what you should know
Acquiring new skills what you should know
baabtra.com - No. 1 supplier of quality freshers
 
Baabtra.com programming at school
Baabtra.com programming at school
baabtra.com - No. 1 supplier of quality freshers
 
99LMS for Enterprises - LMS that you will love
99LMS for Enterprises - LMS that you will love
baabtra.com - No. 1 supplier of quality freshers
 
Php sessions & cookies
Php sessions & cookies
baabtra.com - No. 1 supplier of quality freshers
 
Php database connectivity
Php database connectivity
baabtra.com - No. 1 supplier of quality freshers
 
Chapter 6 database normalisation
Chapter 6 database normalisation
baabtra.com - No. 1 supplier of quality freshers
 
Chapter 5 transactions and dcl statements
Chapter 5 transactions and dcl statements
baabtra.com - No. 1 supplier of quality freshers
 
Chapter 4 functions, views, indexing
Chapter 4 functions, views, indexing
baabtra.com - No. 1 supplier of quality freshers
 
Chapter 3 stored procedures
Chapter 3 stored procedures
baabtra.com - No. 1 supplier of quality freshers
 
Chapter 2 grouping,scalar and aggergate functions,joins inner join,outer join
Chapter 2 grouping,scalar and aggergate functions,joins inner join,outer join
baabtra.com - No. 1 supplier of quality freshers
 
Chapter 1 introduction to sql server
Chapter 1 introduction to sql server
baabtra.com - No. 1 supplier of quality freshers
 
Chapter 1 introduction to sql server
Chapter 1 introduction to sql server
baabtra.com - No. 1 supplier of quality freshers
 
Microsoft holo lens
Microsoft holo lens
baabtra.com - No. 1 supplier of quality freshers
 
Blue brain
Blue brain
baabtra.com - No. 1 supplier of quality freshers
 
5g
5g
baabtra.com - No. 1 supplier of quality freshers
 
Aptitude skills baabtra
Aptitude skills baabtra
baabtra.com - No. 1 supplier of quality freshers
 
Gd baabtra
Gd baabtra
baabtra.com - No. 1 supplier of quality freshers
 

Recently uploaded (20)

Mastering AI Workflows with FME by Mark Döring
Mastering AI Workflows with FME by Mark Döring
Safe Software
 
OWASP Barcelona 2025 Threat Model Library
OWASP Barcelona 2025 Threat Model Library
PetraVukmirovic
 
WebdriverIO & JavaScript: The Perfect Duo for Web Automation
WebdriverIO & JavaScript: The Perfect Duo for Web Automation
digitaljignect
 
Securing AI - There Is No Try, Only Do!.pdf
Securing AI - There Is No Try, Only Do!.pdf
Priyanka Aash
 
Quantum AI: Where Impossible Becomes Probable
Quantum AI: Where Impossible Becomes Probable
Saikat Basu
 
Raman Bhaumik - Passionate Tech Enthusiast
Raman Bhaumik - Passionate Tech Enthusiast
Raman Bhaumik
 
Security Tips for Enterprise Azure Solutions
Security Tips for Enterprise Azure Solutions
Michele Leroux Bustamante
 
9-1-1 Addressing: End-to-End Automation Using FME
9-1-1 Addressing: End-to-End Automation Using FME
Safe Software
 
Securing Account Lifecycles in the Age of Deepfakes.pptx
Securing Account Lifecycles in the Age of Deepfakes.pptx
FIDO Alliance
 
Cluster-Based Multi-Objective Metamorphic Test Case Pair Selection for Deep N...
Cluster-Based Multi-Objective Metamorphic Test Case Pair Selection for Deep N...
janeliewang985
 
Cracking the Code - Unveiling Synergies Between Open Source Security and AI.pdf
Cracking the Code - Unveiling Synergies Between Open Source Security and AI.pdf
Priyanka Aash
 
ReSTIR [DI]: Spatiotemporal reservoir resampling for real-time ray tracing ...
ReSTIR [DI]: Spatiotemporal reservoir resampling for real-time ray tracing ...
revolcs10
 
Curietech AI in action - Accelerate MuleSoft development
Curietech AI in action - Accelerate MuleSoft development
shyamraj55
 
"Scaling in space and time with Temporal", Andriy Lupa.pdf
"Scaling in space and time with Temporal", Andriy Lupa.pdf
Fwdays
 
10 Key Challenges for AI within the EU Data Protection Framework.pdf
10 Key Challenges for AI within the EU Data Protection Framework.pdf
Priyanka Aash
 
Salesforce Summer '25 Release Frenchgathering.pptx.pdf
Salesforce Summer '25 Release Frenchgathering.pptx.pdf
yosra Saidani
 
Quantum AI Discoveries: Fractal Patterns Consciousness and Cyclical Universes
Quantum AI Discoveries: Fractal Patterns Consciousness and Cyclical Universes
Saikat Basu
 
OpenACC and Open Hackathons Monthly Highlights June 2025
OpenACC and Open Hackathons Monthly Highlights June 2025
OpenACC
 
Enhance GitHub Copilot using MCP - Enterprise version.pdf
Enhance GitHub Copilot using MCP - Enterprise version.pdf
Nilesh Gule
 
GenAI Opportunities and Challenges - Where 370 Enterprises Are Focusing Now.pdf
GenAI Opportunities and Challenges - Where 370 Enterprises Are Focusing Now.pdf
Priyanka Aash
 
Mastering AI Workflows with FME by Mark Döring
Mastering AI Workflows with FME by Mark Döring
Safe Software
 
OWASP Barcelona 2025 Threat Model Library
OWASP Barcelona 2025 Threat Model Library
PetraVukmirovic
 
WebdriverIO & JavaScript: The Perfect Duo for Web Automation
WebdriverIO & JavaScript: The Perfect Duo for Web Automation
digitaljignect
 
Securing AI - There Is No Try, Only Do!.pdf
Securing AI - There Is No Try, Only Do!.pdf
Priyanka Aash
 
Quantum AI: Where Impossible Becomes Probable
Quantum AI: Where Impossible Becomes Probable
Saikat Basu
 
Raman Bhaumik - Passionate Tech Enthusiast
Raman Bhaumik - Passionate Tech Enthusiast
Raman Bhaumik
 
Security Tips for Enterprise Azure Solutions
Security Tips for Enterprise Azure Solutions
Michele Leroux Bustamante
 
9-1-1 Addressing: End-to-End Automation Using FME
9-1-1 Addressing: End-to-End Automation Using FME
Safe Software
 
Securing Account Lifecycles in the Age of Deepfakes.pptx
Securing Account Lifecycles in the Age of Deepfakes.pptx
FIDO Alliance
 
Cluster-Based Multi-Objective Metamorphic Test Case Pair Selection for Deep N...
Cluster-Based Multi-Objective Metamorphic Test Case Pair Selection for Deep N...
janeliewang985
 
Cracking the Code - Unveiling Synergies Between Open Source Security and AI.pdf
Cracking the Code - Unveiling Synergies Between Open Source Security and AI.pdf
Priyanka Aash
 
ReSTIR [DI]: Spatiotemporal reservoir resampling for real-time ray tracing ...
ReSTIR [DI]: Spatiotemporal reservoir resampling for real-time ray tracing ...
revolcs10
 
Curietech AI in action - Accelerate MuleSoft development
Curietech AI in action - Accelerate MuleSoft development
shyamraj55
 
"Scaling in space and time with Temporal", Andriy Lupa.pdf
"Scaling in space and time with Temporal", Andriy Lupa.pdf
Fwdays
 
10 Key Challenges for AI within the EU Data Protection Framework.pdf
10 Key Challenges for AI within the EU Data Protection Framework.pdf
Priyanka Aash
 
Salesforce Summer '25 Release Frenchgathering.pptx.pdf
Salesforce Summer '25 Release Frenchgathering.pptx.pdf
yosra Saidani
 
Quantum AI Discoveries: Fractal Patterns Consciousness and Cyclical Universes
Quantum AI Discoveries: Fractal Patterns Consciousness and Cyclical Universes
Saikat Basu
 
OpenACC and Open Hackathons Monthly Highlights June 2025
OpenACC and Open Hackathons Monthly Highlights June 2025
OpenACC
 
Enhance GitHub Copilot using MCP - Enterprise version.pdf
Enhance GitHub Copilot using MCP - Enterprise version.pdf
Nilesh Gule
 
GenAI Opportunities and Challenges - Where 370 Enterprises Are Focusing Now.pdf
GenAI Opportunities and Challenges - Where 370 Enterprises Are Focusing Now.pdf
Priyanka Aash
 

Algorithms - Introduction to computer programming

  • 1. Computer Programming Day 1 - Ijasali Manalody
  • 2. Relevance of computer Programming • To automate tasks done by Humans Hard Work Difficult to generate reports Delay in handling bulk data Easy to Maintain Single click for reports Can handle any amount of data
  • 3. What is programming? • Series of instructions to a computer to accomplish a task; – Same like instructions given to human to perform a task • Eg : Go straight , Take right etc • Group of instructions will make a program to perform that particular task Group of instructions to make Tea is, Instruction 1 : Boil Water Instruction 2 : Put Tea powder Instruction 3 : Put Sugar Group of instructions make a program
  • 4. How to give instructions to computer? • Instructions must be written in a way the computer can understand 漢鼎 31 繁 81 印篆 ????? Add 31 and 81 ????
  • 5. Language of Computer • Computer only understands Machine language which is of 0 and 1 • So any instructions to computer must be of Machine Language
  • 6. Mother Board How does a Computer program get executed? Instruction Address 11011110 00110000 00010010 00110001 10000000 00001010 01001000 10000001 00001100 10000100 11000001 00101011 01011011 01011001 11101011 11111000 Ram Loads instruction for execution CPU
  • 7. Ram Example Machine Instruction Machine Operation 0000 0000 Stop 0000 0001 Rotate bristles left 0000 0010 Rotate bristles right 0000 0100 Go back to start of program • Let us say that an electric toothbrush has a processor and main memory. • The processor can rotate the bristles left and right, and can check the on/off switch Addr ess Machine Instructions 0 0000 0001 1 0000 0010 2 0000 0100 3 4
  • 8. Types of Languages • Machine level Languages • Machine language programs were made up of instructions written in binary code. • This is the “native” language of the computer. • Assembly Level Languages • Assembly language programs are made up of instructions written in mnemonics.(Uses convenient alphabetic abbreviations to represent instructions) • High Level Languages • Use statements that resemble English phrases combined with mathematical terms needed to express the problem or task being programmed.
  • 9. “All programs must be translated to Machine language before their instructions can be executed ”
  • 10. Assembler • Assembled languages: – Assembler: a program used to translate Assembly language programs. – Produces one line of binary code per original program statement. – The entire program is assembled before the program is sent to the computer for execution. ...... clc add ax,bx mov di, offset result ..... Assembler ...... 01010101 01010101 ......
  • 11. Compiler – Compiler is a program used to translate high-level programs into Machine level program. – It translates the entire program into binary code before anything is sent to the CPU for execution. ...... c=a+b ; Print a; ...... Compiler ...... 01010101 01010101 ......
  • 12. Interpreter • Interpreted Languages: – Interpreter: A program used to translate high-level programs. – Translates one line of the program into binary code at a time: • An instruction is fetched from the original source code. • The Interpreter checks the single instruction for errors. (If an error is found, translation and execution ceases. Otherwise…) • The instruction is translated into binary code. • The binary coded instruction is executed. • The fetch and execute process repeats for the entire program. ...... c=a+b ; Print a; ...... Interpretor ...... 01010101 01010101 ......
  • 13. Compiler Vs Interpreter • Takes Entire Program as input • Intermediate object code is generated • Program need not be compiled every time we run the program • Errors are displayed after entire program is checked • Example : C compiler • Takes Single instruction as input • No intermediate object code is generated • Every time we run the program it will be converted to low level program(interpreted) • Errors are displayed after every instruction interpreted • Example : BASIC, PHP interpreter
  • 14. Programming languages Vs Scripting Languages • Some programming languages (like Java or C++) require the code to be compiled (translated to binary) before it can be started. • Others (like JavaScript,PHP) are interpreted, meaning that each command is translated separately when the program is started.
  • 15. How to write a program? Step 1: Decide what steps are needed to complete the task ! Step 2: Write the steps as Algorithms(written in English) or as a flowchart (graphic symbols) Step 3: Translate into the programming language Step 4: Try out the program and “debug” it (fix if necessary)
  • 16. What is Algorithms? • List of steps written in English • Like the instructions for a recipe • Must be in the right sequence – Imagine saying “put the tea powder” and then “take water and boil”
  • 17. Sample Algorithm • Task: add two numbers • Algorithm: – Start – Get two numbers – Add them – Print the answer – End
  • 18. What does a flowchart look like? • The algorithm from the previous slide would look like this as a flowchart: Start Get 2 numbers Add them Print answer End
  • 19. What are those symbols? • START/END • INPUT/OUTPUT • PROCESS • DECISION
  • 20. What are those symbols? • START/END • Used at the beginning and end of each flowchart.
  • 21. What are those symbols? • INPUT/OUTPUT • Shows when information/data comes into a program or is printed out.
  • 22. What are those symbols? • PROCESS • Used to show calculations, storing of data in variables, and other “processes” that take place within a program.
  • 23. What are those symbols? • DECISION • Used to show that the program must decide whether something (usually a comparison between numbers) is true or false. YES and NO (or T/F) branches are usually shown. Y N X>7?
  • 24. Another Sample: Calculating Age • Algorithm: – Start – Get year born – Calculate age – Print age – If age > 50 print OLD – End
  • 25. Another Sample: Calculating Age Get yr Calc age Print age Age>50?OLD Y N Start End
  • 26. Questions? “A good question deserve a good grade…”
  • 28. Self-Check • A computer program is… – A series of instructions to accomplish something – Written in High level language – Written in machine language – All of the above
  • 29. Self-Check • A computer program is… – A series of instructions to accomplish something – Written in High level language – Written in machine language – All of the above
  • 30. Self-Check • To “compile” a program means to… – Translate it into mnemonics – Translate it into binary code – Executes the program – Run the program instruction
  • 31. • To “compile” a program means to… – Translate it into mnemonics – Translate it into binary code – Executes the program – Run the program instruction Self-Check
  • 32. Self-Check • Algorithm is… – The program as it is written in a programming language – The results of a program that makes secret codes – The logic of a program written in English – The logic of a program shown in a chart
  • 33. • Algorithm is… – The program as it is written in a programming language – The results of a program that makes secret codes – The logic of a program written in English – The logic of a program shown in a chart Self-Check
  • 34. Self-Check • The flowchart symbol to perform a calculation is…
  • 35. Self-Check • The flowchart symbol to perform a calculation is…
  • 36. Self-Check • The flowchart symbol to perform a Decision is…
  • 37. • The flowchart symbol to perform a Decision is… Self-Check
  • 38. Self-Check • Look at the flowchart section below. If the variable X is 5, what will print (K or 1st)? X > 5? YN Print “1st”Print “K”
  • 39. Self-Check • Look at the flowchart section below. If the variable X is 5, what will print (K or 1st)? X > 5? YN Print “1st”Print “K” K will be printed. The answer to the question “Is X greater than 5?” is NO, since X is equal to (not greater than) 5.
  • 40. Self-Check • Choose the correct flowchart symbol for each of these statements. • AGE>65? • Calc. Tax • START • Print NAME
  • 41. Self-Check • Choose the correct flowchart symbol for each of these statements. • AGE>65? • Calc. Tax • START • Print NAME
  • 43. Check list Day1 • Relevance of Computer programming • Instructions are loaded into ____ • Instructions are executed by ____ • Assembly level Language Vs Machine level language Vs High level language • Assembler Vs compiler Vs interpreter
  • 44. Elements of a Program Day 2
  • 45. How does human perform simple task; for Eg: add 456 and 44 Add 456 and 44 500
  • 46. How does human perform simple task; Eg: add 456 and 44 1 We Hear it through our input senses 2 We store the numbers 456 and 44 in our memory 456 44 456+44 3 We calculate the result in our brain and store it in memory 500 3 We say the answer through our output senses
  • 47. 1 Computer use keyboard to receive inputs 2 Computer store the numbers 456 and 44 in Ram 456 44 456+44 3 Computer calculate the result in CPU (ALU within CPU) and stores result back in ram 500 4 Computer use monitor to display outputs How does computer perform simple task; Eg: add 456 and 44
  • 48. Elements of a Program • During programming we may need to do the following – Stores Data temporarily – Control the normal flow of instruction execution – Repeat one or more instructions several time – Repeat group of instructions at several parts of program
  • 49. Elements of a Program • During programming we may need come across following situations – Stores Data temporarily - Variables – Control the normal flow of instruction execution - Decisions – Repeat one or more instructions several time - Loops – Repeat particular instructions at several parts of program - Functions
  • 51. N Y Start i=1 If i<100 Print iStop Print all the numbers up to 100 i=i+1
  • 52. N Y Start i=1 If i<100 Print iStop Print all the numbers upto 100 i=i+1 1i Ram
  • 53. • Variables are part of almost every program. • A variable is a “place to put data” and is usually represented by a letter or a word. (Think of a variable as a Tupperware container with a label on it.) • Variable names cannot contain spaces. R A M Variables A B c
  • 54. Variables • The most common way to put information into a variable is to use the equal sign (=). • Eg a=10; • C = A + 7 means take the value of A, add 7, and put it into C. • COUNT=COUNT + 2 means take the current value of COUNT, add 2 to it, and make it the new value of COUNT.
  • 55. Variables • Sometimes you must specify the type of data that will be placed in a variable. • Here are some examples of data types: – String (text, “strings of letters”) – Integer (whole numbers) – Float(decimal numbers) – Boolean (true/false)
  • 56. Variables • Variables may be classified as global or local. • A global variable is one that can be shared by all parts of a program, including any functions or sub-programs. • A local variable is one that is used only within a certain part of the program, for example, only in one function or sub-program.
  • 58. N Y Start i=1 If i<100 Print iStop Print all the numbers up to 100 i=i+1
  • 59. Decisions • A program often needs to decide whether something is true or false in order to see which way to continue. • Programs often use IF (or IF or IF ELSE) statements to show a decision.
  • 60. Decisions • An IF statement always has a condition to check, often a comparison between a variable and a number. • The IF statement also must specify what to do if the condition/comparison is true.
  • 61. Decisions • In an IF statement, when the condition is false, the program simply ignores the commands within IF and continues to the next line. • In an IF ELSE statement, commands are given for both the true and false conditions.
  • 62. Loops
  • 63. N Y Start i=1 If i<100 Print iStop Print all the numbers up to 100 i=i+1
  • 64. Loops • A loop is a repetition of all or part of the commands in a program. • A loop often has a counter (a variable) and continues to repeat a specified number of times. • A loop may also continue until a certain condition is met (e.g., until the end of a file or until a number reaches a set limit)
  • 66. Print all the numbers up to 100 N Y Start i=1 If i< 10 0 Print iStop i=i+1 Start STOP
  • 67. Functions • In most programming languages, small sub-programs are used to perform some of the tasks. • These may be called functions, subroutines, handlers, or other such terms. • Functions often have names (e.g., getName or CALCTAX).
  • 68. Functions • A function generally gets information from the main program, performs some task, and returns information back to the program. • Functions follow the same rules of syntax, etc. as the main program.
  • 69. Hints for Writing Code • “Code” means writing the program in the appropriate language • Be sure the code is exact (spelling, capitals/lower case, punctuation, etc). • Write part of the code, try it, then write more.
  • 70. Debugging • To “debug” means to try a program, then fix any mistakes. • Virtually no program works the first time you run it. There are just too many places to make errors. • When you are debugging a program, look for spelling and punctuation errors. • Fix one error at a time, then try the program again.
  • 71. Questions? “A good question deserve a good grade…”
  • 73. Self-Check • A function in a program is… – Something from trigonometry, like COSINE – A sub-program, usually performing one task – A way to check the accuracy of a program (a “function check”)
  • 74. • A function in a program is… – Something that stores a value – A sub-program, usually performing one task – A way to check the accuracy of a program (a “function check”) Self-Check
  • 75. Self-Check • A variable in a program is… – A letter or word that represents a place to store data – A decision made within a program – A small sub-program used to find errors
  • 76. Self-Check • A variable in a program is… – A letter or word that represents a place to store data – A decision made within a program – A small sub-program used to find errors
  • 77. • A global variable in a program is… – Store data Permanently – Store Data that can not be accessed from functions – Store data than can be accessed from anywhere in the program Self-Check
  • 78. • A global variable in a program is… – Store data Permanently – Store Data that can not be accessed from functions – Store data than can be accessed from anywhere in the program Self-Check
  • 79. • A loop is used in a program when… – One or more instructions repeats at several part of the program – You want to skip particular instructions – You want to repeat particular instructions until a condition to satisfy – All of the above Self-Check
  • 80. • A loop is used in a program when… – One or more instructions repeats at several part of the program – You want to skip particular instructions – You want to repeat particular instructions until a condition to satisfy – All of the above Self-Check