320 likes | 349 Views
Structural Programming IS-1113. Weeks – 01/ 1 Introduction to Computer Programming and Problem Solving. Introduction. Lecturer Name : Rian F. Umbara, S.Si, M.Si Class Rules: Attendance: min 80 % Late Tolerance: 15 minutes Do not cheat Do not open the internet without permission. .
E N D
Structural ProgrammingIS-1113 Weeks – 01/1 Introduction to Computer Programming and Problem Solving
Introduction • Lecturer Name : Rian F. Umbara, S.Si, M.Si • Class Rules: • Attendance: min 80 % • Late Tolerance: 15 minutes • Do not cheat • Do not open the internet without permission 1
Referensi A Guide to Programming Logic & Design, Farrel, Joyce, Course Technology Downey, Allen B. How to think like Computer Scientist, Open Source Textbook, Waterville, 1999 Felleisen, Mathias, Findler, Robert B. Flatt Mathew, Khrismurthi : How to Design Program : An Introduction to programming and computing, MIT Press, London Handbook Poltek Other Books
Description An Introduction to algorithm and data structures, program development life cycle, logic diagram, basic control structures (seq, if-else, repetitive) in the frame work of structural programming using Pascal as the programming language. This course also introduce various levels in programming language for solving problems
Learning Objectives Upon to successful completion of the course student have : Ability to solve problems by writing algorithms in a structured way; Good understanding about data types such as numeric, alphabetic, character and Boolean; Fundamental computer programming and the Pascal language; Good concept of arrays and use of arrays; Ability in using Functions and their benefit in modular decomposition; Good concept in String manipulation (parsing) Good understanding about User defined data type (record) Good concept in advanced data structures (linked table or stack)
Scoring • Test : • Mid : 25 % • Final : 40 % • Pre test : 10 % • Post test : 10 % • Task : 15 %
Chapter 1 Introduction
Objectives In this lesson, you will learn about: Defining how computer works electronically System Component : Input, Process, and Output Defining levels of programming language Define wahat ‘program’ is Brief introduction in software engineering Using flowchart as a design tool Using Pseudocode as design tool 7
Overview of computers A computer is a collection of several electronic components that work together to process instructions provided by a user. You can use computers to: Solve complicated mathematical problems. Process large amounts of information without errors. Automate day-to-day transactions. This reduces the number of people required to perform a particular task. Send e-mail messages to people across the world. Play games and indulge in recreational activities. 8
Computer Programming ? • Computers do what we tell them to do, NOT what we want them to do • Computer Programming involves writing instructions and giving them to the computer to complete a task. 9
Hardware Components of a Computer • Hardware components are the physical components of a computer. • Following are the hardware components of a computer: • Input Devices • Output Devices • Processing Device • Storage Devices 10
HARDWARE 11
SOFTWARE 12
Analysis Problemspecification Design Algorithm Implementation Program Compilation Executable (solution) Problem Solving 13
What is a (computer) program ? A program is a sequence of instructions that specifies how to perform a computation. The instructions (or commands, or statements) look different in different programming languages 14 Source ://OOPWeb.com : How To Think Like A Computer Scientist Learning with C++ by Allen B_ Downey
What Is Programming ? the act of creating software or some other set of instructions for a computer.(cyber.law.harvard.edu/readinessguide/glossary.html) The extrusion of a parison which differs in thickness in the length direction in order to equalize wall thickness of the blown container. ...(www.all-pak.com/plasticgloss.asp) is the process of writing a sequence of instructions to be excuted by a computer to solve a problem. It is also considered as the act of writing computer programs. Computer programs are set of instructions that tell a computer to perform certain operations. ...(hubpages.com/hub/Concepts-and-Principles-of-Programming ) A system in which specific requirements of the client are determined in written form and, when approved by the client, become the basis for all future planning. The effects of successful programming will be felt by the client as long as he or she lives with the facility executed. ...(www.officespacefinder.co.uk/officespacegloss2.html ) 15
Programming Language A programming language is an artificial language that can be used to write programs which control the behavior of a machine, particularly a computer Programming languages are defined by syntactic and semantic rules which describe their structure and meaning respectively Thousands of different programming languages have been created so far, and new languages are created every year 16
Who Is a Programmer ? A programmer is a person who writes the required computer programs. Programmers translate the expected tasks given in human understandable form into machine understandable form by using compilers and interpreters. 17
Input and Output • Normally, a computer received two kinds of input: • the program • the data needed by the program. • The output is the result(s) produced by following the instructions in the program 18
Programming Languages A language is a means of communication between people. A programmer writes a set of instructions in a programming language to instruct the computer to perform a task. This set of instructions is called a program. 20
Levels of Programming Languages • Programming languages can be classified into three broad categories : • Machine Language • Assembly Language • High-level Language 21
Programming Languages Machine Language 0000100100010010 0010000100010100 0011100100010000 0001000100010110 Assembly LanguageLDA TIME ADA INC MUL VEL STA POS High-level LanguageA = B * (C + D) 22
Basic Functions There are a few basic functions that appear in just about every language: input Get data from the keyboard, or a file, or some other device. output Display data on the screen or send data to a file or other device. math Perform basic mathematical operations like addition and multiplication. testing Check for certain conditions and execute the appropriate sequence of statements. repetition Perform some action repeatedly, usually with some variation. 23
Compiler & Interpreter Compiler is a specific software that gets the whole Source Code (Computer program written in human understandable form) and translates it into Object Code (Computer Program that is in machine understandable form) all at a time. Interpreter is translating and executing one statement (command of Computer Program) of Source Code into Object Code at a time. (It means, interpreters translate and execute computer programs line by line). 24
Compiler • To execute a program written in a high-level language • A computer needs translation software called a compiler • A compiler is language-specific, and each high-level language has its own compiler. 25
Interpreter • Some high-level languages use a different type of translator program called an interpreter. • An interpreter takes a high-level language instruction, converts it to a machine language instruction, executes it and does not save the object code. 26
Executing Program ObjectCode Compiler SourceCode Using Interpreter: Execute Program Interpreter SourceCode Execute a line of Program Using Compiler: 27
Algorithms An algorithm is a sequence of steps required to accomplish a task. • The steps can be categorized into the following three phases: • Input phase • Process phase • Output phase
Program Design Tool • Flowchart : the graphical representation of algorithms • Pseudocode : Pseudocode represents an algorithm in English language.
Representing Algorithm 1(Program Design Tool) • A flowchart consists of symbols, which represent the steps or stages in an algorithm. • The different symbols used in a flowchart are • Flow line Input/Output Process On Page Connector Decision Off Page Connector Procedure/ Subroutine preparation Start and Stop 30
Representing Algorithm 2 Pseudocode • Pseudocode is used as an alternative to a flowchart. • The statements used in pseudocode are simple and written in a sequential manner. • There are a number of keywords used in pseudocode: • Dictionary • begin…end • Accept (Read/Input) • Display (write/Output) • if…then-else 31