01 - Introduction To Computer and Algorithm - Portal
01 - Introduction To Computer and Algorithm - Portal
TO COMPUTER
PROGRAMMING
Introduction to Computer and
Computer Programming
Contributes 3 units:
2 hours lectures (28 hours)
2 hours labs (28 hours)
Main Objective:
Students can independently write, read,
compile, debug and execute computer
programs to solve problems, especially
engineering related problems.
COURSE OUTCOME
1. Ability to define and describe programming
concepts and principles.
2. Ability to apply GNU/Linux for coding,
compiling, executing and debugging computer
programs.
3. Ability to analyze and solve engineering
related problems using computer
programming techniques
4. Ability to evaluate programming techniques
and tools to design computer programs.
ASSESSMENT
4 main components:
Theoretical Tests 20%
Lab Assignments 20%
Lab Test 10%
Final Exam 50%
Assignments are assessed individually (in lab
assignment)
Theoretical tests are written tests
Attendances are compulsory!
REFERENCES
Deitel & Deitel, C How to Program,
International Edition, Pearson-Prentice Hall,
2013.
Cheng, H., C for Engineers and Scientists,
McGraw Hill, 2010.
Hanly, J.R. and Koffman, E.B., C Program
Design for Engineers, 2nd Ed., Addison-
Wesley, 2001.
ISBN : 0321204174
NOTES
This course is NOT about the language
per se, it is about analytical skills and
to apply programming to solve
problems.
Write C program in Linux
environment/GNU compiler applications
Do early reading
Do not hesitate to ask during lecture
sessions
6
LECTURE OUTLINE
1. Introduction to Computer
2. Introduction to Computer
Programming
3. Introduction to C Programming
Language
7
A Brief Look At Computer
Computer
is a device that receives input, stores and
processes data, and provides output in a useful
format.
Computers process data according to sets of
instructions called computer programs
Example: laptops, PCs, mainframes, mobile phones,
washing-machines, TV sets, cars contain computers
Hardware
Physical components of a computer
Example: Keyboard, screen, mouse, disks, memory,
CD-ROM, and processing units
Software
Programs that run on a computer
Example: Operating System such as windows XP
-Vista -7, Word processing packages such as MS
Word, registration program
Computer Hardware
Exercise: Distinguishing between
input-process and output-storage
The scenario:
At the end of each month, a clerk enters the employee name,
number of days present and absent, and the number of overtime done
in the system. The system then calculates the normal salary, the
amount for overtime and the total salary. The clerk then saves the
information in the computer hard disk, and takes a backup on a cd. A
report is produced for the clerk to be shown to the manager.
1. Input:
Task: the
Identify the employee
following for name, number
that particular of days present
system
and absent, the number of overtime
2. Process(es): calculate normal income, calculate
amount for overtime, calculate total salary
3. Output: Report
4. Storage: Harddisk, CD-ROM
How Computer Processes
Information?
Computers are NOT intelligent
Computers do what we tell them to do they dont do
anything by themselves.
We must clearly tell a computer what to do in a step
by step manner using a programming language.
23
Form of Algorithms
The constructs used to build algorithms
can be described in two different ways:
1. Pseudo code
2. Flowchart
24
1. Pseudo Code
25
Example 1: Pseudo Code
Create a detailed set of
instructions (pseudo-code)
that will tell us:
How to eat a banana
26
Example 1: Pseudo Code
INSTRUCTIONS OF HOW TO EAT A BANANA:
RESULT RESULT
Mak Minah arrives in a Mak Minah arrives in
great mood ready to not too great a mood
work since shes soaking wet
28
2. Flow Chart
The algorithm can also be written as a
FLOW CHART
The flow chart is a graphic organiser (a
picture that helps organize your thoughts)
It uses a collection of basic symbols
that are used to organize your algorithm
These symbols are connected by arrows
that show how the algorithm flows
29
Visual Form of Flow Chart
Flowchart: visual-form of an algorithm
Example:
Begin
Input Data
Output Result
End 30
Algorithms: Flow Chart
BASIC SYMBOLS IN FLOW CHART
TERMINAL: Start/End of a
program
PROCESSING: shows any
mathematical operation (e.g. addition,
substraction, etc)
INPUT/OUTPUT: where the user of
the program is asked for information
(INPUT) or where the program displays a
result (OUTPUT)
DECISION: represents any action
where the computer is making a
decision
Flow direction
31
Algorithms: Pseudo Code &
Flow Chart
Example 1
Write an algorithm that display a message to
the screen as Hello World!.
End
32
Algorithms: Pseudo Code &
Flow Chart
Example 2:
Write a flowchart that calculates and prints the
SUM of two integers A and B.
Pseudo Code Flow Chart
Begin
Begin
Input A and B Input A, B
Calculate A + B
Print result of SUM Calculate A + B
End
Print SUM
End
33
Exercises
1) Write an algorithm (pseudo code and
flow chart) to read input of 3 test
marks, calculate the average and
display the final marks.