CSC 121: Computers and Scientific Thinking
Spring 2007

Test 2 Review


Thu, April 5
  • As with Test 1, the test will contains extra points (e.g., 53 out of 50).
  • As with Test 1, the test will include a variety of questions (e.g., TRUE/FALSE, short answer, trace/modify code).
Study advice
  • review online lecture notes (if not mentioned in class, won't be on test)
  • review text
  • look over chapter exercises, review questions, labs
  • reference other sources for examples, different perspectives
Course Material
TEST 1 MATERIAL
Problem Solving & Algorithms
    Polya's problem solving steps
    algorithm analysis, rate of growth, Big Oh notation
        sequential search vs. binary search
    machine language vs. high-level language
        program translation: interpreter vs. compiler
Applications in Biology & Bioinformatics
    impact: 1. computer technology as tools
            2. modeling of complex systems,
            3. storing and analyzing biological data
    bioinformatics, genetic databases
Abstract Thinking & Functions
    abstraction, user-defined functions
        parameters, comments, return statement
        local variables, var declaration
    function libraries, SRC attribute of SCRIPT tag
        random.js: RandomInt, RandomNum, RandomChar, RandomOneOf
Design & Interfaces
    event-driven pages, event-handler elements
        form (FORM tag, attribute: NAME)
        button (INPUT tag, attributes: TYPE, VALUE, ONCLICK)
        text box (INPUT tag, attributes: TYPE, NAME, VALUE, SIZE)
        text area (TEXTAREA tag, attributes: NAME, ROWS, COLS, WRAP)
        image (IMG tag, attributes: NAME, SRC, ALT)
    accessing a text box/text area/image
        document.FORM_NAME.BOX_OR_AREA_NAME.value
        document.images.IMAGE_NAME.src
Computer Science as a Discipline
    study of computation, artificial vs. natural science
    CS themes: hardware, software, theory
    subfields of CS
        Algorithms & Data Structures: private-key vs. public-key encryption
        Architecture: parallel processing
        Operating Systems & Networks: WAN vs. LAN, Ethernet
        Software Engineering: software life cycle
        Artificial Intelligence: Turing Test
        ...
    ethics of computing
Logic & Conditional Execution
    conditional execution, boolean test (==, !=, <, >, <=, >=)
        1-way: if statement
        2-way: if-else statement
        multi-way: cascading if-else
    counters: initialize, increment
    logical connectives: && (and), || (or), ! (not)