Department of Computer Science & Information Systems
University of North Alabama
◊ Current courses

CS 155
Computer Science I

CS 430
Design & Analysis of Algorithms

CS 440
Computer Networking

◊ Past courses

CS 110
Intro to Computers

CS 120
Intermediate Computer Topics

CS 135
Computer Skills for
Problem Solving

CS 155
Computer Science I

CS 249
Information Security (CIS 249)

CS 255
Computer Science II

CS 311
Computer Architecture

CS 325
Programming for the Web

CS 335
New Developments
in Programming

CS 355
Data Structures & Algorithms

CS 421
Automata Theory &
Compiler Construction

CS 430
Design & Analysis
of Algorithms

CS 440
Computer Networking

CS 447
Theory and Applications of Database Systems

CS 455
Software Engineering

CS 470
Artificial Intelligence

CS 490
Cryptography (MA 491)

CS 490
Undergraduate Research
in Computer Science

CS 490
Senior Seminar/Honors Capstone

CIS 376
Web Development

ITE 376
Secure Software Development

ITE 449
Infrastructure Security

>Links

Announcements
Class Schedule

Session Activity Reference
#1 - Jan 8 Course overview Syllabus & Course Materials,
Topics
#2 - Jan 10 Big ideas Topics
#3 - Jan 13 Program design Topics
#4 - Jan 14 Data types,
Identifiers
Topics
#5 - Jan 15 Operators Topics
#6 - Jan 16 In-class Lab  
#7 - Jan 21 Constants Topics
#8 - Jan 22 I/O manipulators Topics
#9 - Jan 23 In-class Lab  
#10 - Jan 27 Streams, cin, & cout Topics
#11 - Jan 28 string data type Topics
#12 - Jan 29 In-class Lab  
#13 - Jan 30 Test #1  
#14 - Feb 3 If statements Topics
#15 - Feb 4 In-class Lab  
#16 - Feb 5 In-class Lab  
#17 - Feb 6 Multi-way if statements Topics
#18 - Feb 10 Switch statements,
enum
Topics
#19 - Feb 11 In-class Lab  
#20 - Feb 12 Review of sequence & selection  
#21 - Feb 13 For loop Topics
#22 - Feb 17 For loop  
#23 - Feb 18 While loop,
Do-while loop
Topics
#24 - Feb 19 Loop review Canvas
#25 - Feb 20 In-class Lab  
#26 - Feb 24 In-class Lab  
#27 - Feb 25 File I/O Topics
#28 - Feb 26 File I/O Topics
#29 - Feb 27 In-class Lab  
#30 - Mar 3 I/O errors Topics
#31 - Mar 4 Predefined functions Topics
#32 - Mar 5 User defined functions Topics
#33 - Mar 6 In-class lab  
#34 - Mar 10 User defined functions Topics
#35 - Mar 11 Scope,
void functions
Topics
#36 - Mar 12 Scope,
User defined functions
Topics
#37 - Mar 13 In-class lab  
#38 - Mar 17 Test #2  
#39 - Mar 18 Pass-by-value,
Pass-by-reference
Topics
#40 - Mar 19 Pass-by-value,
Pass-by-reference
 
#41 - Mar 20 In-class lab  
#42 - Mar 31 Overloading functions Topics
#43 - Apr 1 Overloading functions  
#44 - Apr 2 In-class lab  
#45 - Apr 3 Arrays Topics
#46 - Apr 7 Arrays - virtual class today  
#47 - Apr 8 Arrays Topics
#48 - Apr 9 C-Strings Topics
#49 - Apr 10 In-class lab  
#50 - Apr 14 Arrays as function parameters Topics
#51 - Apr 15 Arrays as function parameters Topics
#52 - Apr 16 Parallel arrays Topics
#53 - Apr 17 Array review  
#54 - Apr 21 Test #3  
#55 - Apr 22 2D arrays Topics
#56 - Apr 23 2D arrays & functions Topics
#57 - Apr 24 2D arrays practice  
#58 - Apr 28 C++ struct Topics

A note about taking notes

I'm often asked about posting my lecture notes on the class web site.

  1. Taking notes during class is, in my opinion, a vital part of the learning process. Hearing what is said, thinking about the material, and writing (in your own words) what we are discussing each session serves to reinforce the learning process. In fact, I think it is useful to take notes from your textbooks as well. The process really speeds up learning and increases retention.
  2. My notes are an extreme shorthand designed to guide me during class. They do not contain everything I say in class or write on the board/computer. My notes are, at best, a skeleton listing of the topics we've covered. Your notes should be more detailed than mine, after all, I already know the material.
  3. Finally, it would be much easier for me not to write anything on the board or computer. The reason I do these things is to allow you to reflect on what is being discussed, write appropriate notes, and ask questions. Writing key phrases and facts on the board/computer is designed to slow me down and allow you time to write your notes. Everything we discuss in class is possible exam material whether I write it down or not (i.e. you should be writing it down).

So, I don't believe posting my lecture notes is in your best interest. I feel it is important for you to take your own notes during class.

However, I will do the following:

  • post a list of the topics we've covered each session,
  • post selected links to reference materials I use,
  • post the chapter and page numbers for each session.

These will be posted on the class web site for each session.

Course materials
Last updated 04/28/25