CS13011 Computer Science IA: Procedural Programming
CS13012 Computer Science IB: Object Oriented Programming

Spring 2023

lecture instructor: Mikhail Nesterenko
office hours:TR 1:00-3:00pm
Office: MSB 356
phone:(330) 672-9101
email:mikhail AT cs.kent.edu
.
lectures: TR 11:00am-12:15pm, SMH 108
.
lab instructors
Joseph Oglio joglio AT kent.edu
Sampson Addaesaddae AT kent.edu
Ali Al-Ramadan aalramad AT kent.edu
Gideon Sodipogsodipo AT kent.edu

CSIB lab times
section
number
day/time location instructor
001M 9:55-11:50amMSB 139Sampson
002M 2:15-4:10pmMSB 139Joseph
003F 2:15-4:10pmMSB 139Ali
011M 9:55-11:50amMSB 162Gideon

Textbook: Problem Solving With C++ by Walter J. Savitch, Pearson, 2017, Tenth Edition, ISBN: 978-0134448282. The textbook is required. No access code is needed. Older editions may be allowed, check with me for details. differences between course and textbook

syllabus, tentative schedule, labs

example CSIB exam example CSIB exam answers CSIB final exam and consultation times, review topics

Mailing list: list info/subscription, archive, previous year's archive


Slides and Examples
topic examples book chapters
CSIA
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 digits 2.3
boolean algebra, boolean and relational operators, branching constructs order, toll, largest 2.4, 3.1-3.2
iterative constructs: while, do-while, for increment, max, odometer, liftoff 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, circle area 4.3,4.5
separate files, independent compilation, header files add1 in separate files 12.1
void-functions, predicates, call-by-reference stack example, swap'em, valueVSreference, predicated greeting 5.1, 5.2, 14.1
defining arrays, arrays with for-loops, passing arrays as arguments, initialize array, pass as parameter 7.1-7.2
strings finding in/updating/passing as parameters/etc. 8.1,8.2
namespaces defining, std 12.2
.
CSIB
file input/ouput sum of three numbers, setw, cerr, to_string, stoi, reading lines from file 6.1
structures simple, complex, passing as parameters, using with arrays 10.1
classes simple, constructors, inline functions, friend functions 10.2
pointers pointer usage 9.1
dynamic memory allocation dynamic memory 9.2
objects with dynamically allocated members dynamic objects 11.4
vectors elementary operations, size change, use with functions, iterators 8.3, 18.1
multidimenstional arrays, vectors of vectors index counting, multiplication table, ragged array 7.4
recursion factorial, write vertical, sum, reverse 14.1
diagrams
.
not covered
exception handling exceptions 16.1,16.2