1 I.Introduction to Algorithm and Programming Algoritma dan Pemrograman – Teknik Informatika UK Petra 2009.

Slides:



Advertisements
Similar presentations
ICS103 Programming in C Lecture 1: Overview of Computers & Programming
Advertisements

Lecture 1: Overview of Computers & Programming
 Computer hardware components are the physical pieces of the computer.  The major hardware components of a computer are: – The central processing.
Copyright © 2002 W. A. Tucker1 Chapter 1 Lecture Notes Bill Tucker Austin Community College COSC 1315.
CSCE 145: Algorithmic Design I Chapter 1 Intro to Computers and Java Muhammad Nazmus Sakib.
Programming Types of Testing.
Chapter 2- Visual Basic Schneider1 Chapter 2 Problem Solving.
COSC 120 Computer Programming
16/13/2015 3:30 AM6/13/2015 3:30 AM6/13/2015 3:30 AMIntroduction to Software Development What is a computer? A computer system contains: Central Processing.
Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Starting Out with Programming Logic & Design First Edition by Tony Gaddis.
CS 201 Overview of Computers & Programming Debzani Deb.
Lecture 1: Intro to Computers Yoni Fridman 6/28/01 6/28/01.
©TheMcGraw-Hill Companies, Inc. Permission required for reproduction or display. COMPSCI 125 Introduction to Computer Science I.
Copyright © 2012 Pearson Education, Inc. Chapter 1: Introduction to Computers and Programming.
1 Lecture 1  Getting ready to program  Hardware Model  Software Model  Programming Languages  The C Language  Software Engineering  Programming.
Introduction to a Programming Environment
C++ Programming: From Problem Analysis to Program Design, Third Edition Chapter 1: An Overview of Computers and Programming Languages C++ Programming:
Introduction Algorithms and Programming. Computer Programming  A form of problem solving  Or, more accurately, a way to solve problems  What we will.
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.
Chapter 2- Visual Basic Schneider1 Chapter 2 Problem Solving.
Chapter 1: Introduction To Computer | SCP1103 Programming Technique C | Jumail, FSKSM, UTM, 2005 | Last Updated: July 2005 Slide 1 Introduction To Computers.
CIS 115 Lecture 1.  Hardware: Electronic Devices  Software: Instructions and Computer Programs.
CS102 Introduction to Computer Programming
Copyright © 2012 Pearson Education, Inc. Chapter 1: Introduction to Computers and Programming.
1 Chapter-01 Introduction to Computers and C++ Programming.
CCSA 221 Programming in C CHAPTER 2 SOME FUNDAMENTALS 1 ALHANOUF ALAMR.
Chapter Introduction to Computers and Programming 1.
CSC 125 Introduction to C++ Programming Chapter 1 Introduction to Computers and Programming.
Chapter 1: Introduction to Visual Basic.NET: Background and Perspective Visual Basic.NET Programming: From Problem Analysis to Program Design.
© Janice Regan, CMPT 128, Jan CMPT 128 Introduction to Computing Science for Engineering Students Creating a program.
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.
Lesson 1b: Computer Systems and Program Development CPS118.
Computer Programming A program is a set of instructions a computer follows in order to perform a task. solve a problem Collectively, these instructions.
Chapter 1: An Overview of Computers and Programming Languages
Copyright © 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Slide 1- 1 October 20, October 20, 2015October 20, 2015October 20,
C++ Programming: From Problem Analysis to Program Design, Third Edition Chapter 1: An Overview of Computers and Programming Languages.
Mrs. Ulshafer August, 2013 Java Programming Chapter 1.
Chapter 1 Introduction Chapter 1 Introduction 1 st Semester 2015 CSC 1101 Computer Programming-1.
An Object-Oriented Approach to Programming Logic and Design Chapter 1 An Overview of Computers and Logic.
Basic of Programming Language Skill Area Computer System Computer Program Programming Language Programmer Translators.
CHAPTER 1 INTRODUCTION 1 st Semester H King Saud University College Of Applied Studies and Community Services CSC 1101 Computer Programming-1.
CHAPTER 1 INTRODUCTION 1 st semester H King Saud University College Of Applied Studies and Community Services CSC 1101 Computer Programming-1.
1 Program Planning and Design Important stages before actual program is written.
CHAPTER 1 INTRODUCTION 2 nd Semester H King Saud University College Of Applied Studies and Community Services CSC 1101 Computer Programming-1.
Introduction 1 (Read Chap. 1) What is Programming? For some given problem: design a solution for it -- identify, organize & store the problem's data --
Chapter 1 Computers, Compilers, & Unix. Overview u Computer hardware u Unix u Computer Languages u Compilers.
Chapter 1 : Overview of Computer and Programming By Suraya Alias
Computer and Programming. Computer Basics: Outline Hardware and Memory Programs Programming Languages and Compilers.
Textbook C for Scientists and Engineers © Prentice Hall 1997 Available at NUS CO-OP at S$35.10.
Ch 1 - Introduction to Computers and Programming Hardware Terminology Main Memory Auxiliary Memory Drives Writing Algorithms Using Pseudocode Programming.
Chapter 11  Getting ready to program  Hardware Model  Software Model  Programming Languages  Facts about C++  Program Development Process  The Hello-world.
©2013 Pearson Education, Inc. Upper Saddle River, NJ. All Rights Reserved. Introduction to Computers and Computing.
C++ Programming: From Problem Analysis to Program Design, Fifth Edition Chapter 1: An Overview of Computers and Programming Languages.
Software Engineering Algorithms, Compilers, & Lifecycle.
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
Programming Languages
Chapter 1: An Overview of Computers and Programming Languages
CSCI-235 Micro-Computer Applications
Computer Programming.
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
Chapter 1: Introduction to Computers and Programming
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.
ICT Programming Lesson 1:
ICS103 Programming in C 1: Overview of Computers And Programming
Presentation transcript:

1 I.Introduction to Algorithm and Programming Algoritma dan Pemrograman – Teknik Informatika UK Petra 2009

2 Computer Programming A form of problem solving Or, more accurately, a way to solve problems What we will be studying is “How to solve problems” using computers

3 What’s a Problem? A question that someone wants an answer to A problem usually has information that represents a starting point, initial assumptions, facts, or data that will be needed in answering the question For example, “What is my grade point average?”

4 How Do We Solve the Problem? With pencil and paper we can compute our grade point average if we know all of our grades and the units for each of the courses taken What are the advantages of writing a computer program to compute our grade point average?

5 How Do We Solve Problems? Four Steps 1. Understand the problem 2. Devise a plan to solve the problem 3. Implement the plan 4. Evaluate the solution  From George Polya’s book, “How to Solve It” written in 1945.

6 What is an Algorithm? A plan for solving a problem  A series of steps to follow to arrive at a solution  A highly technical and precise “recipe” for solving a problem  A “good” algorithm is “correct”, “complete”, and “unambiguous”  “Good” algorithms are also general rather than specific

7 What Does an Algorithm Look Like? It can be written in (precise) English/Indonesia It can be drawn as a diagram (e.g., a flowchart) with steps and a path to follow from one step to the next To make it precise (and computer executable) algorithms are translated into a computer understandable form (e.g., machine language)

8 A Simple Example Problem: Calculate the average of a list of numbers.  Let the number of numbers in the list be n  Assume n is greater than or equal to 1  Calculate the sum of the n numbers  Call this sum s  Then the average is given by s/n

9 Example Expanded Problem: Calculate the average of a list of numbers.  Let the number of numbers in the list be n.  Assume n is greater than or equal to 1.  Pick off the first number on the list and place it on the blackboard.  As long as there are more numbers on the list, pick the next number off the list and add it to the number on the blackboard and replace the number on the blackboard with this sum. (Repeat this step until the list is empty.)  Call the number on the blackboard s.  Then the average is given by s/n.

10 Final Note about Algorithms To qualify as an algorithm, the instructions must be expressed so completely and precisely that somebody could follow the instructions without having to make any assumptions or ask for more information or help of any kind.

11 Computer Basics Hardware and Memory Programs Programming Languages Compilers

12 Hardware and Memory The processor or CPU (Central Processing Unit)  Executes instructions Memory  Main memory (RAM)  Secondary (auxiliary) memory Disk drives (hard drives) Diskettes (floppies) Compact disks (and DVDs) USB Flash Drives

13 Bits, Bytes, and Memory Organization A bit is a single binary digit (i.e., it can assume the value 0 or 1) A byte is a string of 8 bits (enough to hold the representation of a character) The number of a byte is called its “address” or “memory location” When more than one byte is needed to store information the computer uses a string of adjacent bytes

14 Why Do Computers Use Just Zeros and Ones? It’s easier to make a physical device that has only two physical states (e.g., “on” and “off”). There is nothing special about zero and one. The only important thing is that the physical device have two stable states.

15 Programs A program is simply a set of instructions for a computer to follow. A computer “executes” the instructions in the program to process the “data” or information provided as input in order to produce the results or output desired. It is actually the “operating system” (just another program) running on the computer that executes your program.

16 Programming Languages High level languages (languages designed for people to use)  Pascal, FORTRAN, C, C++, Visual Basic, Java Low level languages (languages that computers can understand)  Machine languages, assembly languages

17 Compilers Compilers are programs that translate high level languages into low level languages Compilers are generally machine dependent because different machines have different machine languages The input to the compiler is called the “source code” and the output is called the “object code”

18 Testing and Debugging A mistake in a program is called a bug. The process of removing bugs from a program is called debugging. There are three main classes of bugs or errors in programs:  Syntax errors  Runtime errors  Logic errors

19 Syntax Errors A syntax error is a grammatical mistake in a program. There are strict grammatical rules for writing programs including required punctuation marks. The compiler will catch syntax errors and give its best guess as to the problem, but is often wrong regarding the actual mistake made.

20 Run-Time Errors Errors caught when the program is run. The computer will give an error message, but such messages are often hard to understand. You can be sure that there is an error in your program but it may take some time to find.

21 Logic Errors If the program runs successfully to completion but produces the wrong result, you have a logic error. What you have written is a valid program, but it doesn’t do what it is supposed to do. These are the most difficult errors to find.