Introduction to Computer Science(CSCI-UA-0101.001/002)
Spring 2014 -- Section 1 (Honors) and Section 2
Professor: Andrew Case
The topics covered on the exam will include topics discussed in class and reading assignments made up through class #9 (Midterm Review).
No outside materials are allowed on the exam. You will be provided with some Java API documentation (subject to updates) for use during the exam.
It may be wise to peruse some midterm1 sample questions to get an idea of the test format and some sample problems.
Computer overview - Hardware/Software - Programs Programming Intro - High/Low Level Languages - Anatomy of a Program - Natural Languages vs. Programming Languages - Coding Style - Algorithms - Pseudo-Code - Program design pattern (Writing a program) Programming Concepts - Keywords - Statements - Data Types + Strings, ints, floats - Operators + Order of precedence - Comments - Variables/Constants + Assignment + Naming (including coding style) - Data Input - Type Conversion - Data Output + Strings, ints, floats Coding Style - comments, naming, consistency, hardcoding,
Boolean Logic - Literals, variables, expressions - Boolean Data Type - Comparision Operators - Boolean Logic Operators + not, and, or + Truth tables + order of operator precedence + short circuit evaluation - Converting base 10 to base 2 Control Structures - if, if-else, if-elif-else - Nested if constructs - Loops - For loops - While Loops - Break - Continue
Functions - Why functions - Function declarations/definition + name + parameters - required/optional + code + return value - Function calls (calling functions) + program design with functions + paramaters (data in) - order/types + return values (data out) + side-effects - Variable scope + global/class variables/constants + local/function variables - Libraries/Imports/External Functions + java.lang.Math + java.util.Scanner
Arrays - Creating arrays - Array storage - Modifying arrays - Adding to arrays