Sunteți pe pagina 1din 34

EKT150 INTRODUCTION TO

COMPUTER PROGRAMMING
Introduction to Computer and
Computer Programming

Dr. Nur Hafizah Ghazali


hafizahghazali@unimap.edu.my
COURSE INFORMATION

• 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. “

Task: Identify the following for that particular system

1. Input
2. Process(es)
3. Output
4. Storage
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
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.
INTRODUCTION TO
COMPUTER PROGRAMMING
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
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
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
Problem Solving using Programming
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
5. Testing and Verification: Check the program
6. Documentation
Properties of Well Designed Programs
Well designed programs must :

Correct and Easy to Easy to


accurate understand maintain
and update

Efficient Reliable Flexible


INTRODUCTION TO
C PROGRAMMING LANGUAGE
• 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
• Algorithms are a problem solving procedure that
consist of:
1. What actions you want the computer to perform
2. The order of those actions should happen in

21
• 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
If
needed
problem
– IMPLEMENT that design
– TEST to see if it works

22
• The constructs used to build algorithms can be
described in two different ways:
1. Pseudo code
2. Flowchart

23
• 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)

24
• 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

25
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
26
WAKE UP MAK MINAH 1 WAKE UP MAK MINAH 2
• Get out of bed • Get out of bed
• Take off pyjamas • Take off pyjamas
• Take a shower • Get dressed The order of
actions are very
• Get dressed • Take a shower important!
• Eat breakfast • Eat breakfast
• Drive to school • Drive to school

RESULT RESULT
• Mak Minah arrives in a great • Mak Minah arrives in not too
mood ready to work  great a mood since she’s
soaking wet 

27
• 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”

28
• Flowchart: visual-form of an algorithm
Example:
Begin

Input Data

Process 1 Decision Process 2

Output Result

End 29
• 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
30
Example 1
• Write an algorithm that display a message to the screen as
“Hello World!”.

Pseudo Code Flow Chart


Begin
• Begin
• Print Message Print “Hello World!”
• End

End

31
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
32
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”.
References
1) Yuksel Uckan, “Problem Solving Using C, Structured Programming
Techniques”, McGraw-Hill

2) Deitel and Deitel, C: “How to Program”, McGraw-Hill, 7th Edition, 2013

3) Cheng, H., “C for Engineers and Scientists”, McGraw Hill, 2010

4) Hanly, J.R. and Koffman, E.B., “C Program Design for Engineers”, 2nd Ed.,
Addison-Wesley, 2001, ISBN : 0321204174

S-ar putea să vă placă și