Vous êtes sur la page 1sur 14

What is Programming?

1
Definitions
„ Program
A set of directions telling a computer exactly what
to do.
„ Programming languages
Languages for specifying sequences of directions
to a computer.
„ Algorithm
A sequence of language independent steps
which may be followed to solve a problem.
„ Flowchart
Diagrammatic representation of step for solving
the given problem.

2
Many Aspects of Programming

ƒ Programming is controlling: computer does exactly what


you tell it to.
ƒ Programming is teaching: computer can only “learn” to do
new things if you tell it how.
ƒ Programming is problem solving: always trying to make
computer do something useful — i.e., finding an optimal
travel route.
ƒ Programming is creative: must find a good solution out of
many possibilities.
ƒ Programming is modelling: describe salient (relevant)
properties and behaviours of a system of components.
ƒ Programming is abstraction: identify important features
without getting lost in detail.
ƒ Programming is concrete: must provide detailed
instructions to complete task
3
Sample Algorithm

Calculating area of the circle.

Algorithm:

1. Start.
2. Input radius in cm.
3. Calculate, area = 3.14 * (radius * radius)
4. Display area.
5. Stop

4
Sample Algorithm
Calculate the division obtained by the student according
to inputted marks.

1. Start.
2. Accept five different subjects’ marks,
i.e. m1, m2, m3, m4, m5.
3. Calculate, per = (m1+m2+m3+m4+m5) / 5
4. If per>= 75 then display “Distinction” else
If per>= 60 then display “First class” else
If per>= 50 then display “Second class” else
If per>= 40 then display “Pass class” else
Display “Fail”.
5. Stop.
5
FLOW CHART SYMBOLS
Start / Stop

General Processing

Decision

Input / Output

Connector

Function / Subroutine
6
Calculating area of the circle.

Start

Input radius
in cm.

Calculate area =
3.14 * (radius * radius)

Display
area

Stop

7
Start

Accept five different


subjects’ marks i.e.
m1, m2, m3, m4, m5.

Calculate, per =
(m1+m2+m3+m4+m5) / 5

Yes
Display
per >=75 “Distinction”
No
Yes
Display
per >=60 “First Class”
No
Yes
Display
per >=50 “Second
Class”
No
Yes
Display
per >=40 “Pass Class”
No
Display
“Fail”

Stop
8
Final Maze Solving Program

step forward;
while (inside the maze?)
{
turn right;
while (facing a wall?)
{
turn left;
}
step forward;
}

9
Programming Languages
• Machine language:
It is computer’s native language having a sequence of zeroes
and ones (binary). Different computers understand different
sequences. Thus, hard for humans to understand: e.g. 0101001...

• Assembly language:
It uses mnemonics for machine language. In this each instruction
is minimal but still hard for humans to understand:
e.g. ADD AH, BL

• High-level languages:
FORTRAN, Pascal, BASIC, C, C++, Java, etc.
Each instruction composed of many low-level instructions,
closer to English. It is easier to read and understand:
e.g. hypot = sqrt(opp*opp + adj * adj);
10
Running Compiled Programs

We want to code the program in a high-level language, C

But each type of computer only “understands” its own


machine language (zeroes and ones)

Thus we must translate from ‘C’ to machine language.


A team of experts programs a translator, called a
“compiler” which translates entirety of a ‘C’ program to
an executable file in computer’s native machine
language with checking for syntactical errors.

Process:
compilation: Your program Æ executable file
machine executes your program by “running” each
machine language instruction in the executable file.
11
Software Development: A 5-Step Process

Analysis Coding into C

Design Keep program


Working &
Gathering requirement Current
and specifications Implementation

Algorithm and
Testing
flowchart

Checking the Maintenance


program execution and
debugging
Result: Working Program

12
Errors

„ Debugging is the process of detecting and fixing


errors found in a program.
„ Syntactic errors are caused by giving the compiler
a program it cannot recognize.
„ Logical errors come from programs that compile
correctly but fail to execute as expected.
„ Programs must be designed carefully and tested
thoroughly to ensure that neither error will occur.

13
Created By,

„ Mr. Tushar B Kute,


Lecturer in Information Technology,
K. K. Wagh Polytechnic, Nashik.
tbkute@gmail.com

14

Vous aimerez peut-être aussi