Study Topics for Test 1
- Syllabus
- goals
- late policy
- plagiarism policy
-
Chapter 1
- model of a machine
- properties of RAM, secondary storage
- John von Neumann's contribution
- programming languages
- machine language
- high level language
- designing problem solutions
- top-down design - levels of design
- algorithm - it is a procedure for solving a problem
- pseudocode
- test - bug - debug
- high level languages and their standards
- IDE and components
- compiler
- syntax and semantics (logic)
- source program / object program
- Documentation - comments - both styles - // and /* */
- history of C and C++ - Ritchie, Stroustrup
- Structured programming
- Four structures - sequence, selection, repetition, module
- one entrance, one exit - no spaghetti code
- no dead code
- no infinite loops
- Alice examples
- Alice terminology
- class versus instance
- methods, functions, properties
- events
- dot notation for referring to a method of an object
-
Chapter 2
- structure of a C++ program
- include files
- namespace statement
- main function header - "int main ()"
- function body - surrounded by braces
- reserved words - keywords
- identifiers - syntax - how to make them
- data / variables - properties
- name - an identifier
- type - builtin types
- location - memory space - address
- value - don't assume you know what it is until you define it
- declaration with and without initialization
- difference between variables and constants
- how they're declared and used - named constants
- why named constants are good
- assignment statements
- how they operate, precisely
- difference between assignment statement and declaration with
initialization
- tracing a program - showing output and memory contents
- screen - standard output device
- cout - standard output stream
- << - insertion operator
- spacing horizontally and vertically
- endl - manipulator
- cin - standard input stream
- >> - extraction operator
- return statement and how it connects to function header
- errors - kinds
- Chapter 3
- data types
- bool
- string
- char
- integer- overflow, underflow
- float, double - exponential notation
- Therac-25
- type coercion versus type casting
- arithmetic operators
- precedence of operators
- division operator- integer versus floating point
- remainder or mod "%"
- ++ and -- operators
- mixed type expressions
- Pre-written functions
- include statements
- math library - cmath
- graphics library - graphics.h
- pow, sqrt, sin, cos
- how to call them
- the Debugger
- watch window
- single stepping
- breakpoints