This chapter discusses the key components of computers and the programming process. It describes the four main operations of computers as input, processing, output, and storage. The six phases of programming are understanding the problem, planning the logic, coding, translating to machine language, testing, and deployment. It also covers data hierarchy, flowchart symbols, variables, decisions, assignment statements, data types, and the evolution of procedural and object-oriented programming techniques.
In this document
Powered by AI
Introductory chapter on computers, programming process objectives, components, and use of variables.
Understanding hardware and software, operations: input, processing, output, storage; errors in logic.
Six phases of programming: understanding problems, planning, coding, testing, and deployment.
Ordering of data types: character, field, record, file, database.
Visual representation of logic using flowchart symbols and pseudocode.
Definition and naming conventions of variables to enhance code readability.
Using sentinel values to manage program termination and prevent infinite loops.
Explanation of connector symbols in flowcharts for logic flow transfer.
How to assign values to variables, including data types used and constants.
Different types of data (text and numeric) and their appropriate use.
History of programming from machine-level to procedural and object-oriented methods.
Recap of computer operations, programming phases, data hierarchy, variables, and programming techniques.
Programming Logic andDesign Fourth Edition, Comprehensive Chapter 1 An Overview of Computers and Logic
2.
Objectives Understand computercomponents and operations Describe the steps involved in the programming process Describe the data hierarchy Understand how to use flowchart symbols and pseudocode statements Use and name variables
3.
Objectives (continued) Usea sentinel, or dummy value, to end a program Use a connector symbol Assign values to variables Recognize the proper format of assignment statements Describe data types Understand the evolution of programming techniques
4.
Understanding Computer Componentsand Operations Hardware and software: the two major components of any computer system Hardware : equipment, or devices Software : programs that contain instructions for the computer Four major operations in a computer: Input Processing Output Storage
5.
Understanding Computer Componentsand Operations (continued) Input devices : allow data to enter the computer Mouse, keyboard, scanner Processing : working on the data; such as: Organizing data Checking data for accuracy Mathematical or other manipulations on data Central Processing Unit (CPU) : hardware that performs the tasks
6.
Understanding Computer Componentsand Operations (continued) Output devices : provide data to the user Printer, monitor, speakers Programming language : special language containing instructions for the computer Visual Basic, Java, C#, C++, COBOL Syntax : the rules governing word usage and punctuation in the language Machine language : a language that controls the computer’s on/off circuitry Compiler or interpreter : software that translates programming languages to machine language
7.
Understanding Computer Componentsand Operations (continued) A program must be free of syntax errors to be run, or executed , on a computer To function properly, the logic must be correct What’s wrong with this logic for making a cake?
8.
Understanding Computer Componentsand Operations (continued) Logic errors , or semantic errors , are more difficult to locate than syntax errors Logic for multiplying a number by 2 (includes input, processing and output statements)
9.
Understanding Computer Componentsand Operations (continued) Two storage categories: internal and external Internal storage : Main memory, random access memory (RAM) Located inside the computer system V olatile : contents are lost when power goes down External storage : P ersistent : contents are relatively permanent Floppy drive, hard drive, flash media, magnetic tape Located outside the computer system
10.
Understanding theProgramming Process Six programming phases: Understand the problem Plan the logic Code the program Use software to translate the program to machine language Test the program Deploy the program into production
11.
Understanding the ProgrammingProcess (continued) Understanding the problem: May be the most difficult phase Users may not be able to articulate their needs well User needs may be changing frequently Programmers may have to learn the user’s functional job tasks Failure to understand the problem is the major cause of most project failures
12.
Understanding the ProgrammingProcess (continued) Planning the logic: Plan the steps that the program will take Use tools such as flowcharts and pseudocode Flowchart : a pictorial representation of the logic steps Pseudocode : English-like representation of the logic Walk through the logic before coding by desk-checking the logic
13.
Understanding the ProgrammingProcess (continued) Coding the program: Select the programming language Write the instructions Using software to translate the program into machine language: Programmers write instructions in English-like high-level languages Compilers or interpreters change the programs into low-level machine language that can be executed Syntax errors are identified by the compiler or interpreter
Understanding the ProgrammingProcess (continued) Testing the program: Execute it with sample data and check results Identify logic errors and correct them Choose test data carefully to exercise all branches of the logic Putting the program into production Do this after testing is complete and all known errors have been corrected May require coordination with other related activities or software
16.
Understanding the DataHierarchy Data hierarchy : ordering of data types by size Character : single symbol (letter, number, special symbol) “A”, “7”, “$” Field : group of characters forming a single data item “Smith” Record : a group of related fields Customer record containing name and address fields File : a group of related records Customer file, containing all customer records Database : collection of related files, called tables, that serve the information needs of the organization
Using Flowchart Symbolsand Pseudocode Statements Flowchart : pictorial representation of the logic Pseudocode : English-like representation of the logic Example:
Using Flowchart Symbolsand Pseudocode Statements (continued) Flowlines : Connect the steps Show the sequence of statements Have arrows to show the direction Terminal symbol (start/stop symbol): Shows the start and end points of the statements Lozenge shape
Using Flowchart Symbolsand Pseudocode Statements (continued) Back-pointing arrows show statements that will be repeated
25.
Using and NamingVariables Variable : a memory location whose contents can vary; also called an identifier Each programming language has it own rules for naming identifiers, including: Legal characters Maximum length Use of upper or lower case Variable name must be a single word, but can be formed from several words rate, interestRate, interest_rate
26.
Using and NamingVariables (continued) Choose meaningful names for variables Improves the readability and maintainability of code
27.
Ending a Programby Using Sentinel Values Infinite loop : a sequence of statements that repeats forever with no escape Avoid infinite loops by testing for a predetermined value that means “stop processing” Decision : testing a value Flowchart decision symbol : a diamond shape, with two flowlines, one for Yes and one for No
Ending a Programby Using Sentinel Values (continued) Sentinel value (or dummy value ) Does not represent real data Signal to stop Can be used with input from files or from users End-of-file ( EOF ) marker : Code stored in the file that marks the end of the data Usually used instead of a sentinel value for file input
Using the ConnectorFlowchart connector symbol : Marks a logic transfer to another location in the flowchart Transfer location can be on the same page or on another page On-page symbol : a circle with a number or letter to identify the matching transfer location Off-page symbol : a square with a pointed bottom, containing page number and a number of letter to identify the matching transfer location
Assigning Values toVariables Assignment statement : Assigns a value to a variable Variable must appear on the left side, value on the right side of the assignment operator Right side may be an expression that will be evaluated before storing the value in the variable Assignment operator : the equal sign (=) in most languages Variable : Memory location: has an address and a value Value (contents) is used for various operations
34.
Understanding Data TypesTwo basic data types: Text Numeric Numeric data stored by numeric variables Text data stored by string, text, or character variables Constants : Values that do not change while the program is running Have identifiers, and can be used like variables for calculations, but cannot be assigned new values
35.
Understanding Data Types(continued) Some programming languages implement several numeric data types, such as: Integer : whole numbers only Floating-point : fractional numeric values with decimal points Character or string data is represented as characters enclosed in quotation marks “x”, “color” Data types must be used appropriately
Understanding the Evolutionof Programming Techniques Programming began in the 1940s, using memory addresses and machine code directly Higher level languages were developed to allow English-like instructions Older programs were “monolithic,” and ran from beginning to end Newer programs contain modules that can be combined to form programs
38.
Understanding the Evolutionof Programming Techniques (continued) Two major programming techniques: Procedural programming Object-oriented programming Procedural programming : focuses on the procedures that programmers create Object-oriented programming : focuses on objects that represent real-world things and their attributes and behaviors Both techniques employ reusable program modules
39.
Summary Four majorcomputer operations: input, processing, output, and storage Six programming phases: understand the problem, plan the logic, code the program, translate the program to machine language, test the program, deploy the program Data hierarchy: character -> field -> record -> file -> database Flowchart: pictorial representation of program logic Variables: named memory locations that contain values
40.
Summary (continued) Testinga value involves making a decision Assignment statements: store a value into a variable Assignment operator: the equal (=) sign in most languages Two major data types: text and numeric Procedural programming focuses on actions performed on data Object-oriented programming focuses on representing and manipulation objects