Computer Science I
CS23021

Room: MSB 121
Fall 2010
Sections 1&2: TU 2:15-3:30pm
Sections 3&4: TU 3:45-5:00pm

instructor: Mikhail Nesterenko
office:MSB 356
office hours:TU 12:00-2:00pm
phone:(330) 672-9101
email:mikhail AT cs.kent.edu
.
lab instructor:Manas Hardas
office:MSB 255
office hours:MW 10:00-11:00am,
phone:672-9004
labs:M (section 003), W(section 004)
3:35am-5:30pm, MSB 162
email:mhardas AT cs.kent.edu

lab instructor:Jalaa Hoblos
office:MSB 155
office hours:MW 11:00am-12:00pm
labs:M (section 001), W(section 002)
12:15-2:10pm, MSB 162
phone:672-9017
email:jhoblos AT cs.kent.edu

Textbook: Problem Solving With C++ by Walter J. Savitch, Addison-Wesley, 2008, Seventh Edition, ISBN: 0321531345

syllabus, tentative schedule, grades, lab site

Mailing list: list info, archive

Slides and Examples
topic examples book chapter
introduction, history of C++, C++ program outline 1.1-1.3
first program, development environment hello world, area 1.3-1.4
variables, identifiers, assignment, input/output 2.1-2.2
types, expressions, more on assignment 2.3
boolean algebra, boolean and relational operators, branching constructs if, switch 2.4, 3.1-3.2
iterative constructs: while, do-while, for while for 2.4, 3.3-3.4
programming style, comments, naming programs
predefined functions (library functions)
doghouse, equation, time and random 2.5, 4.2
programmer-defined functions, local and global variables, call-by-value add1, lawoffice, windchill 4.3,4.5
design, design examples, debugging functions buying pizza 4.1, 4.4, 5.3, 5.4
separate files, independent compilation, header files, using Make and GDB with separate files add1, celsius2fahrenheit 12.1
void-functions and call-by-reference void-functions, call-by-reference 5.1, 5.2
defining arrays, arrays with for-loops, passing arrays as arguments, projects with arrays and functions, constant arrays as parameters, searching and sorting arrays using arrays, plants, searching and sorting 7.1-7.2
strings strings 8.1,8.2
structures, file input/ouput structs i/o 10.1, 6.1
classes classes 10.2
abstract data types implementations of bank account: one two 10.3
friend functions, operator overloading friends, overloading: Bach, US currency 11.1
arrays of objects, objects of arrays basic examples, bank statement day schedule 1 day schedule 2 11.3
pointers pointer usage 9.1
new and delete operations, dynamic memory, dynamic objects, automatic code documentation dynamic memory dynamic objects documentation 11.2,11.3
vectors vectors 8.3, 18.1
lists lists 13.1
class and function templates basic, insertion-sort, linked-list 17.1-17.2
inheritance inheritance 15.1,15.2
standard template library, virtual functions stl examples, using virtual functions 18.1,18.2,15.3
exception handling exceptions 16.1,16.2
representing program structure with diagrams OMT, UML
recursion recursion 14.1
bitwise operations, bit fields bit manipulation bit manipulation