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

Spring 2024

lecture instructor: Mikhail Nesterenko
office hours:TR 1:15-3:15pm
Office: MSB 356
phone:(330) 672-9101
email:mikhail AT cs.kent.edu
.
lectures: TR 11:00am-12:15pm, SMH 110
.
lab instructors
Md. Kawsher Mahbubmmahbub AT kent.edu
Xiangxu Linxlin10 AT kent.edu
Hao Zouhzhou6 AT kent.edu

CSIB lab times
section
number
day/time location instructor
001M 9:55-11:50amMSB 139Kawsher
002M 2:15-4:10pmMSB 139Xiangxu
005W 2:15-4:10pmMSB 162Hao

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 quiz, answer key

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
file input/ouput sum of three numbers, setw, cerr, to_string, stoi, reading lines from file 6.1
namespaces defining, std 12.2
.
CSIB
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
exception handling exceptions 16.1,16.2
.
not covered