01 - Introduction to Computer and Algorithm (1).pdf
1. KMJ16803 INTRODUCTION TO
COMPUTER PROGRAMMING
Introduction to Computer and
Computer Programming
Prof. Dr. Abdullah bin Chik
Material Department
Faculty of Chemical Engineering & Technology
2. โข Contributes 3 units:
โ 2 hours lectures (28 hours)
โ 2 hours labs (18 hours)
โข Main Objective:
โ Students can independently write, read, compile, debug
and execute computer programs to solve problems,
especially engineering related problems.
COURSE INFORMATION
3. COURSE OUTCOME
CO1 Ability to assess the basic computer programming
concepts and principles for engineering related programs.
CO2 Ability to design simple computer programs to solve
problems/issues in multidisciplinary engineering field.
CO3 Ability to use coding software editor for coding,
compiling, executing and debugging computer programs
for related engineering programs.
4. ASSESSMENT
โข 4 main components:
โ Midterm Test 1 20%
โ Midterm Test 2 20%
โ Assignments 20%
โ Quizzes 10%
โ Mini Project 30%
โข Assignments are assessed individually (in lab assignment)
โข Midterm tests are written test
5. REFERENCES
โข Deitel & Deitel, โC How to Programโ, Global Editionโ, 8th
Ed, Pearson , 2016.
โข Etter,, M.D, โEngineering Problem Solving with C โ, Global
Editionโ, 4th Ed, Pearson , 2012.
6. 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 GNU compiler applications
(CodeBlocks IDE)
โข Do early reading
โข Do not hesitate to ask during lecture sessions
6
7. LECTURE OUTLINE
1. Introduction to Computer
2. Introduction to Computer Programming
3. Introduction to C Programming Language
7
8. 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, and
processing units
ยง Software
ยง Programs that run on a computer
ยง Example: Operating System such as windows 10 and 11, Word
processing packages such as MS Office 365
10. 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. โ
Task: Identify the following for that particular system
1. Input
2. Process(es)
3. Output
4. Storage
11. 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. โ
Task: Identify the following for that particular system
1. Input: the employee name, number of days present and absent, the
number of overtime
2. Process(es): calculate normal income, calculate amount for overtime,
calculate total salary
3. Output: Report
4. Storage: Hard disk, flash drive, memory card SD etc.
12. How Computer Processes Information?
ยง Computers are NOT intelligent
ยง Computers do what we tell them to do they donโt do anything by
themselves.
ยง We must clearly tell a computer what to do in a step by step
manner using a programming language.
ยง Computers only understand โelectronicโ
ยง High voltage/low voltage โ The machine language
ยง Machine language is binary (two values: high/low) 1โs and 0โs
13. Why We Use Computer?
โข Computers produce fast, accurate and reliable results.
โข While computers do the boring, repetitive, ordinary tasks, we can
spend our efforts and time to work on more interesting and creative
tasks.
โข The use of computers in business and manufacturing decreases the
cost of goods and services produced.
โข It is more difficult and needs more time to find or grow up a skill-full
labour in IT industry, while buying an additional computer and
installing the required software on is easier and cheaper.
15. Programming / Program / Programmer
โข Programming in general term is planning or implementation of a task
or event command. In the computing field, is instructing a computer
to perform specific tasks.
โข Computer programming can be defined as the process of planning a
set of sequence commands to be executed by a computer.
โข Program be defined as a set of sequence commands that have been
determined to be executed by a computer.
โข Computers are just electronic devices that have the power to perform
difficult tasks but they do not โKNOWโ what to do therefore -
programmers tell the computers what to do by writing programs
16. Types of Programming Languages
ยง Machine language
ยง Lowest-level programming language consist of
strings of numbers giving machine specific
instructions
ยง Example: +1300042774, +1400593419,
+1200274027
ยง Assembly language
ยง English-like abbreviations representing
elementary computer operations (translated via
assemblers)
ยง Example: LOAD BASEPAY, ADD OVERPAY
ยง High level language
ยง Codes similar to everyday English. Use
mathematical notations (translated via
compilers)
ยง Example Code:
grossPay = basePay + overTimePay
ยง Example high level languages: C, C++, Java
17. Programming Problem
Problem that can be solve using programming language.
โข Suppose you want to add 34 and 56, this is easy. But to add 100 numbers is
difficult for us need to use calculator or paper and pencil. Or we can write a
program for computer to help us.
Can these problems solve by computer programming?
โข Converting units from kilograms to grams.
โข Counting the number of cars on a highway.
โข Finding a life partner
โข Total rain in a week
โข How long we live
โข What we want to eat for dinner
19. Steps of Programming
1. Requirement Specification: Eliminate ambiguities, Clearly
understand the problem
2. Analyse the problem: Understand the inputs, outputs and processes
used for manipulating the data, formulas and constraints
3. Design: Write the algorithm (flowchart or pseudocode) to represent
the solution
4. Implement the algorithm: Write a program / coding
5. Testing and Debugging : Check the program
6. Documentation
20. Properties of Well Designed Programs
Well designed programs must :
Correct and
accurate
Easy to
understand
Easy to
maintain
and update
Efficient Reliable Flexible
22. โข Computer programs are a detailed set of
instructions given to the computer
โข Programs are constructed based on an ALGORITHM
which is an outline of how your computer program
will work
โข ALGORITHM are a problem solving procedure or
instructions that consist of:
1. What actions you want the computer to perform
2. The order of those actions should happen in
22
23. โข To solve problem using algorithms, we have to:
โREAD and understand the problem
โTHINK about different solutions to the
problem
โDESIGN an approach that will solve the
problem
โIMPLEMENT that design
โTEST to see if it works
23
If
needed
24. โข The constructs used to build algorithms can be
described in two different ways:
1. Pseudo code
2. Flowchart
24
25. When the algorithm is written out as a well-thought
series of steps, it is called PSEUDO CODE
โข It is written in easy to understand language (i.e.
ENGLISH)
โข It is written very similar to the way that you would code
it into your 3rd Generation Language (i.e. C Language)
25
26. โข Create a detailed set of instructions
(pseudo-code) that will tell us:
โ How to eat a banana
โข Make your instructions as detailed
as possible, so that even someone
who has never eaten a banana
before can understand them
26
27. 1. Using your hand, get a yellow crescent-shaped fruit
called a โbananaโ
2. Peel the outer skin off the banana
3. Eat the banana
i. Put a small section of banana in your mouth
ii. Bite down on the banana
iii. Chew the banana by opening and closing your mouth
iv. Once the banana has been chewed, swallow the banana
v. Repeat until banana is finished
4. Throw out the used banana peel
27
28. RESULT
โข Mak Minah arrives in a great
mood ready to work J
RESULT
โข Mak Minah arrives in not too
great a mood since sheโs
soaking wet L
WAKE UP MAK MINAH 1
1. Get out of bed
2. Take off pyjamas
3. Take a shower
4. Get dressed
5. Eat breakfast
6. Drive to school
WAKE UP MAK MINAH 2
1. Get out of bed
2. Take off pyjamas
3. Get dressed
4. Take a shower
5. Eat breakfast
6. Drive to school
28
The order of
actions are very
important!
29. โข The algorithm can also be written as a FLOW CHART
โข The flow chart is a visual- form of an algorithm
โข Performs as 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
31. โข BASIC SYMBOLS IN FLOW CHART
31
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
32. Example 1
โข Write an algorithm that display a message to the screen as
โHello World!โ.
32
โข Begin
โข Print Message
โข End
Begin
Print โHello World!โ
End
Pseudo Code Flow Chart
33. Example 2:
Write a flowchart that calculates and prints the SUM of
two integers A and B.
โข Begin
โข Input A and B
โข Calculate A + B
โข Print result of SUM
โข End
Begin
Input A, B
Calculate A + B
Print SUM
End
Pseudo Code Flow Chart
33
34. 1) Write an algorithm (pseudo code and flow chart)
to read input of 3 test marks, calculate the
average and display the final marks.
2) Additional to (1), if the final marks is 60 and
above, display mark and โPassedโ, otherwise
display mark and โFailedโ.
35. โข Begin
โข Input test1, test2 and test3
โข Calculate average
โข Print result of average
โข End
Pseudo Code Flow Chart
35
36. Pseudo Code Flow Chart
โข Begin
โข Input test1, test2 and test3
โข Calculate average
โข If average >=60
โข Display average &
โPassedโ
โข Otherwise
โข Display average &
โFailedโ
โข End