Week 1 Introduction to Computers and Programming Languages UniMAP Sem II – 12/13 EKT120: Computer Programming 1.

Slides:



Advertisements
Similar presentations
Senem Kumova Metin Introduction to Programming CS 115 Introduction to Computing PART I : Computer Basics PART II: Introduction to Computing/Programming.
Advertisements

ICS103 Programming in C Lecture 1: Overview of Computers & Programming
Lecture 1: Overview of Computers & Programming
Overview of Programming and Problem Solving ROBERT REAVES.
Chapter 1: An Overview of Computers and Programming Languages J ava P rogramming: From Problem Analysis to Program Design, From Problem Analysis to Program.
© 2010 Pearson Addison-Wesley. All rights reserved. Addison Wesley is an imprint of Chapter 1: Overview of Computers and Programming Problem Solving &
Copyright © 2012 Pearson Education, Inc. Chapter 1: Introduction to Computers and Programming.
Chapter 1: An Overview of Computers and Programming Languages
Introduction to C++ Programming CS 117 Section 2 and KNET Sections Spring 2001 MWF 1:40-2:30.
C++ Programming: From Problem Analysis to Program Design, Third Edition Chapter 1: An Overview of Computers and Programming Languages C++ Programming:
Starting Out with C++: Early Objects 5/e © 2006 Pearson Education. All Rights Reserved Starting Out with C++: Early Objects 5 th Edition Chapter 1 Introduction.
CIS 260 Computer Programming I in C Prof. Timothy Arndt.
Introduction to Computers and Programming
CS102 Introduction to Computer Programming
Copyright © 2012 Pearson Education, Inc. Chapter 1: Introduction to Computers and Programming.
Alternate Version of STARTING OUT WITH C++ 4 th Edition Chapter 1 Introduction to Computers and Programming.
CS 161 INTRO TO PROGRAMMING I Dr. Blaise W. Liffick Fall
Chapter Introduction to Computers and Programming 1.
Introduction to Programming Dr Masitah Ghazali Programming Techniques I SCJ1013.
CSC 125 Introduction to C++ Programming Chapter 1 Introduction to Computers and Programming.
Chapter 1 An Overview of Computers and Programming Languages.
INTRODUCTION TO COMPUTER PROGRAMMING itc-314 LECTURE 01.
INTRODUCTION TO COMPUTING
Copyright © 2012 Pearson Education, Inc. Chapter 1: Introduction to Computers and Programming.
Chapter 1: Introduction to Computers and Programming.
Copyright © 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 1: Introduction to Computers and Programming.
CISC105 General Computer Science Class 1 – 6/5/2006.
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Starting Out with C++ Early Objects Seventh Edition by Tony Gaddis, Judy.
UniMAP Sem1-08/09EKT120: Computer Programming1 Week 1 – Lecture 1.
EKT 120/4 C Programming (Additional note). Computer Fundamentals Computer is a machine that can receive, store, transform an output data of all kinds.
© Copyright 1992–2004 by Deitel & Associates, Inc. and Pearson Education Inc. All Rights Reserved Computer Organization Six logical units in every.
UNIMAP Sem1-08/09EKT120: Computer Programming1 Week 1 – Introduction to Computer and Algorithm.
COMP1050 Winter 2015 Computer System Maintenance.
Introduction to Computer Systems and the Java Programming Language.
1 CISC181 Introduction to Computer Science Dr. McCoy Lecture 1 February 8, 2005.
C++ Programming: From Problem Analysis to Program Design, Third Edition Chapter 1: An Overview of Computers and Programming Languages.
Module 2 : Part 1 INTRODUCTION TO HARDWARE & SOFTWARE INTRODUCTION TO HARDWARE & SOFTWARE.
COMPUTER PROGRAMMING. Computer programming the objective of the module to gain the necessary skills to develop a computer program using one of the high.
CHAPTER 1 INTRODUCTION 1 st Semester H King Saud University College Of Applied Studies and Community Services CSC 1101 Computer Programming-1.
ELEMENTS OF A COMPUTER SYSTEM HARDWARE SOFTWARE PEOPLEWARE DATA.
CHAPTER 1 INTRODUCTION 2 nd Semester H King Saud University College Of Applied Studies and Community Services CSC 1101 Computer Programming-1.
UniMAP Sem I – 10/11EKT150: Computer Programming 1 Week 1 – Introduction to Computers and Programming Languages (Part 1) Pn. Rusnida bt. Romli & Che Muhammad.
Copyright 2003 Scott/Jones Publishing Standard Version of Starting Out with C++, 4th Edition Chapter 1 Introduction to Computers and Programming.
A.Abhari CPS1251 Topic 1: Introduction to Computers Computer Hardware Computer components Connecting Computers Computer Software Operating System (OS)
Computer Programming (1) Code & No.: CS 102 CREDIT HOURS: 5 UNIT Lecture 3.0 hours/week Lab: 2.0 hour/on every week a. This course introduces the students.
Computer Fundamentals MSCH 233 Lecture 1. What is a computer? A computer is an electronic machine which can accept data in a certain form, process the.
UniMAP Sem2-10/11 DKT121: Fundamental of Computer Programming1 Introduction to C – Part 1.
Brief Version of Starting Out with C++ Chapter 1 Introduction to Computers and Programming.
Chapter 1 An Overview of Computers and Programming Languages.
Evolution of C and C++ n C was developed by Dennis Ritchie at Bell Labs (early 1970s) as a systems programming language n C later evolved into a general-purpose.
1 Types of Programming Language (1) Three types of programming languages 1.Machine languages Strings of numbers giving machine specific instructions Example:
Copyright © 2014, 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Starting Out with C++ Early Objects Eighth Edition by Tony Gaddis,
C++ Programming: From Problem Analysis to Program Design, Fifth Edition Chapter 1: An Overview of Computers and Programming Languages.
Copyright © 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 1: Introduction to Computers and Programming.
Victoria Ibarra Mat:  Generally, Computer hardware is divided into four main functional areas. These are:  Input devices Input devices  Output.
Chapter 1 Introduction 2nd Semester H
BASIC PROGRAMMING C SCP1103 (02)
Week 1 – Introduction to Computers and Programming Languages (Part 1)
Chapter 1: An Overview of Computers and Programming Languages
Chapter 1: An Overview of Computers and Programming Languages
BASIC PROGRAMMING C SCP1103 (02)
Overview of Computers and Programming Chapter 1
Week 1 – Session 1 Pn. Yasmin Yacob 04 – KUKUM Sem2-06/07
ICS103 Programming in C Lecture 1: Overview of Computers & Programming
Chapter 1: An Overview of Computers and Programming Languages
C++ Programming: From Problem Analysis to Program Design
UNIV 103 CS Majors Seminar Dr. Blaise W. Liffick Fall 2017.
King Saud University College Of Applied Studies and Community Services CSC 1101 Computer Programming-1 Done By: Asmal Alosaimi Edited By: Fatimah Alakeel.
King Saud University College Of Applied Studies and Community Services CSC 1101 Computer Programming-1 Done By: Asmal Alosaimi Edited By: Fatimah Alakeel.
ICS103 Programming in C 1: Overview of Computers And Programming
Presentation transcript:

Week 1 Introduction to Computers and Programming Languages UniMAP Sem II – 12/13 EKT120: Computer Programming 1

General Information Contributes 4 units: 2 hours – lectures 4 hours – labs Main Objective: Students can independently write, compile, debug and execute computer programs to solve problems, especially engineering related problems. UniMAP Sem II – 12/13 EKT120: Computer Programming 2

Course Outcomes Ability to define and describe programming concepts and principles. Ability to apply programming techniques and tools such as flowchart and pseudo code to design computer programs. Ability to apply GNU/Linux for coding, compiling, executing and debugging computer programs. Ability to solve engineering related problems using computer programming techniques. UniMAP Sem II – 12/13 EKT120: Computer Programming 3

Overall Evaluation 4 main components: Theoretical Tests (2) => 20%‏ (Test1 = 10%, Test2 = 10%) Lab Assignments (4) => 30% (Asg1 = 6%, Asg2 = 6%, Asg3 = 8%, Asg4 = 10%) Lab Test => 10% Final Exam => 40%‏ Assignments are assessed individually The two tests are written tests UniMAP Sem II – 12/13 EKT120: Computer Programming 4

References Deitel & Deitel, Sudin, S., Ahmad, R. Badlishah, and Yacob, Y., “C How to Program”, Pearson-Prentice Hall, Cheng, H., “C for Engineers and Scientists”, McGraw Hill, Hanly, J.R. and Koffman, E.B., “C Program Design for Engineers”, 2 nd Ed., Addison-Wesley, ISBN : UniMAP Sem II – 12/13 EKT120: Computer Programming 5

Notes This course is NOT about the language per se, it is about problem solving, analytical skills and to apply C to solve problems. Write C program in Linux environment. Do early reading. Do not hesitate to ask during lecture sessions. UniMAP Sem II – 12/13 EKT120: Computer Programming 6

Outline Computer Fundamentals Computer organization and hardware Computer software Programming Languages Machine language Assembly language High-level language Algorithm : pseudo code and flowchart Control Structures Simple C Program UniMAP Sem II – 12/13 EKT120: Computer Programming 7

Computer Fundamentals Computer system is divided into hardware and software. Hardware refers to physical components of computer which are: Main Memory Central Processing Unit (CPU)‏ Input Device Output Device Secondary Memory Device UniMAP Sem II – 12/13 EKT120: Computer Programming 8

UniMAP Sem II – 12/13 EKT120: Computer Programming 9 Figure 1.1 The Intel Atom processor chip contains the full circuitry of a central processing unit in an integrated circuit whose small size and low power requirements make it suitable for use in mobile internet devices. (Intel Corporation Pressroom Photo Archives)

Figure 1.2 (a) Notebook Computer (HP Pavilion dv5©, Courtesy of Hewlett-Packard). (b) Palmtop Computer (iPhone 3G©, Courtesy of Apple, Inc.) (c) Desktop Computer (iMac©, Courtesy of Apple, Inc.) UniMAP Sem II – 12/13 EKT120: Computer Programming 10

Figure 1.3 Components of a Computer UniMAP Sem II – 12/13 EKT120: Computer Programming 11

Computer Hardware UniMAP Sem II – 12/13 EKT120: Computer Programming 12 Input Device Output Device Secondary Memory Control Unit Arithmetic and Logic Unit Register CPU Main Memory

Central Processing Unit (CPU)‏ CPU is the computer’s administrator and is responsible for supervising the operation of the other sections Consists of two functional units; control unit and arithmetic-logic unit (ALU)‏ Control unit supervises all activities of the computer system ALU performs basic arithmetic operations and comparison operations UniMAP Sem II – 12/13 EKT120: Computer Programming 13

Main Memory keeps information from the input unit also keeps processed information until it can be placed on output devices all programs must be loaded into main memory before they can be executed and all data must be brought into main memory before it can be manipulated. UniMAP Sem II – 12/13 EKT120: Computer Programming 14

Main Memory Main memory can be further classified into two types: Random Access Memory (RAM)‏ information in RAM will be lost when the computer is turned- off. Read Only Memory (ROM)‏ It has been set during manufacturing process. ROM usually contains instructions and information considered to be fundamental to the computer. UniMAP Sem II – 12/13 EKT120: Computer Programming 15

Figure Memory Cells in Main Memory UniMAP Sem II – 12/13 EKT120: Computer Programming 16

Secondary Memory Main memory is only used during processing following certain instructions Permanent information is NOT stored in main memory but is stored in secondary memory E.g. program file, data file, etc E.g. hard disk, diskette, CD UniMAP Sem II – 12/13 EKT120: Computer Programming 17

Figure 1.5 Secondary Storage Media UniMAP Sem II – 12/13 EKT120: Computer Programming 18

Input/Output Devices Input devices - feed data and programs into computers E.g. keyboard, mouse, touch screen, scanners Output devices - display results produced by computer E.g. monitor, printer, speaker UniMAP Sem II – 12/13 EKT120: Computer Programming 19

Software As a complement to hardware, computer system needs software to solve problems. Software are classified into : System software Application software UniMAP Sem II – 12/13 EKT120: Computer Programming 20

Software System software : manages the computer and its peripheral devices (hardware) E.g. Operating system (OS)‏ Text editor Pre-processor Language translator Linker Loader UniMAP Sem II – 12/13 EKT120: Computer Programming 21

Software Application software : performs specific tasks There are two types: Program to solve specific problems Program written by user to solve specified problem E.g. word processor, desktop publishing software, spreadsheets, database, graphics, communication, programs perform specific tasks such as accounting, scientific, engineering, education, etc UniMAP Sem II – 12/13 EKT120: Computer Programming 22

Programming Languages Programming language is divided into three categories: Machine Language Assembly Language High-Level Language UniMAP Sem II – 12/13 EKT120: Computer Programming 23

Machine Language Language understood by the computer Bunch of 0’s and 1’s Program written in machine language can be executed without being translated Nevertheless, hard to learn because it is written in 0’s and 1’s Program is too long to solve simple problem Machine-dependant and not portable E.g UniMAP Sem II – 12/13 EKT120: Computer Programming 24

Figure 1.6 Relationship Between a Byte and a Bit UniMAP Sem II – 12/13 EKT120: Computer Programming 25

Assembly Language Strings of 0’s and 1’s are replaced into instructions which resemble English language to represent computer operation element Easier to understand and write E.g. UniMAP Sem II – 12/13 EKT120: Computer Programming 26 LOAD rate MULThour STORwages

Assembly Language Nevertheless, needs language translator called Assembler to change Assembly Language to Machine Code for execution purpose still too long and not portable UniMAP Sem II – 12/13 EKT120: Computer Programming 27

High-Level Language Improves weaknesses in Machine Language and Assembly Language Portable Written in one instruction to carry out several instructions in machine level E.g. discount_price = price – discount; Must be changed to machine code before executed, needs compiler : a system software that translates source program to object program UniMAP Sem II – 12/13 EKT120: Computer Programming 28

Algorithms The solution to any computing problem involves executing series of actions in a specific order Pseudo code : artificial and informal language that helps programmers develop algorithms E.g. if student’s grade is greater than or equal to 50 Print “Pass” else Print “Fail” UniMAP Sem II – 12/13 EKT120: Computer Programming 29

Algorithms Flowchart: visual-form of an algorithm E.g. UniMAP Sem II – 12/13 EKT120: Computer Programming 30 Process 2 Decision Data Process 1 Begin End

Algorithm-Basic symbols in a flowchart UniMAP Sem II – 12/13 EKT120: Computer Programming 31 Start/End Process Input/Output Decision Flow direction Connector

Flowchart-(example)‏ UniMAP Sem II – 12/13 EKT120: Computer Programming 32 Start read num1, num2 sum=num1+num2 print sum End

UniMAP Sem II – 12/13 EKT120: Computer Programming 33 TRY THIS!!! Write a pseudo code, flowchart and program that calculates and prints the SUM of two integers A and B.

UniMAP Sem II – 12/13 EKT120: Computer Programming 34 Pseudo code Begin Input A and B Calculate A + B Print result of SUM End Flowchart Begin Input A,B Calculate A + B Print SUM End

Control Structure All programs could be written in terms of three control structures: Sequence structure Selection structure Repetition structure UniMAP Sem II – 12/13 EKT120: Computer Programming 35

Sequence Structure Is a series of steps executed sequentially by default UniMAP Sem II – 12/13 EKT120: Computer Programming 36 Read num1, num2 Calculate total=num1+num2 Print total Pseudo codeFlowchart Read num1, num2 total = num1+num2 print total

Selection Structure Used to choose among alternative courses of action C has three types: if, if.. else, and switch UniMAP Sem II – 12/13 EKT120: Computer Programming 37

The if Selection Structure “if” structure is a single-entry/single-exit structure UniMAP Sem II – 12/13 EKT120: Computer Programming 38 true false grade >= 60 print “Pass” If student’s grade is greater than or equal to 60 Print “Pass”

The if..else Selection Structure Specifies an action to be performed both when the condition is true and when it is false UniMAP Sem II – 12/13 EKT120: Computer Programming 39 truefalse print “Fail”print “Pass” grade >= 60 If student’s grade is greater than or equal to 60 Print “Pass” else Print “Fail”

Repetition Structure Specifies a block of one or more statements that are repeatedly executed until a condition is satisfied Three types : while, for, do-while UniMAP Sem II – 12/13 EKT120: Computer Programming 40

The while Repetition Structure Programmer specifies an action is to be repeated while some conditions remain true UniMAP Sem II – 12/13 EKT120: Computer Programming 41 product <= 1000 product = 2 * product true false While product is less than or equal 1000 calculate product=2 * product

Basics of a Typical C Program Development Environment UniMAP Sem II – 12/13 EKT120: Computer Programming 42

Figure 1.7 Entering, Translating, and Running a High-Level Language Program UniMAP Sem II – 12/13 EKT120: Computer Programming 43

Figure 1.8 Flow of Information During Program Execution UniMAP Sem II – 12/13 EKT120: Computer Programming 44

Simple C Program: Program to add two numbers #include int main(void)‏ { int dA, dB, dSum; printf (“input first integer \n”); scanf (“%d”, &dA)‏ printf (“input second integer \n”); scanf (“%d”, &dB)‏ dSum = dA + dB; printf (“Sum is %d\n”, dSum); return 0; } UniMAP Sem II – 12/13 EKT120: Computer Programming 45 OUTPUT Input first integer 39 Input second integer 27 Sum is 66

End Week 1 UniMAP Sem II – 12/13 EKT120: Computer Programming 46 Q & A!