Dr. Alan Garvey
Spring 2023
CS 180 Picture of Dr. Garvey
CS 191 CS 291 CS 480 CS 495

Computer Science 180: Foundations of Computer Science I

Professor: Dr. Alan Garvey

Section 2: MWF 12:30-1:20pm VH 1328

Lab: T 12:30-1:20pm VH 1232

Office Hours

Syllabus

The course syllabus is available online.

Tutoring Hours

  • Monday, 3:30-5:30pm (Carl)
  • Wednesday, 3:30-5:30pm (Carl)

Special CyberWeek Extra Tutoring Hours

  • Tuesday November 27, 3-5pm
  • Thursday, November 29, 3-5pm
  • Friday, November 30, 3:30-5:30pm
All tutoring hours are held in VH 2110, the small Math/CS computer lab right by the Department Office. The tutor for this class is Carl.

Books

There is one required textbooks for this class:

  • Starting Out with C++: From Control Structures through Objects by Tony Gaddis, Pearson, 2018, Ninth Edition

Style Guide

A C++ language style guide will be adhered to in this course.

Calendar

A calendar that we might approximately follow is available. Technically this is from Dr. Beck's sections, but it gives you an idea.

Chapter 1 textbook slides

Chapter 2 textbook slides

Clang Compiler on Windows

Thanks to John Neitzke for preparing A guide to installing Code Blocks and Clang on Windows.

Example Files

Exams

Programming Assignments:

  • There will be roughly 7 programming assignments during the semester.

Labs:

  • There will be roughly a lab a week, held on Tuesdays in VH 1232.
  • Lab 1 - Getting Started wth C++ on Linux
    Lab Date: 21 August 2018 Due Date: 23 August 2018
  • Lab 2: Simple Arithmetic in C++
    Lab Date: 28 August 2018 Due Date: 2 September 2018
  • Lab 3: Calculations and Formatting
    Lab Date: 4 September 2018 Due Date: 8 September 2018
  • Lab 4: Calculations, Random and Formatting
    Lab Date: 11 September 2018 Due Date: 16 September 2018
  • Lab 5: Decisions
    Lab Date: 18 September 2018 Due Date: 22 September 2018
  • Lab 6: The While Loop
    Lab Date: 25 September 2018 Due Date: 29 September 2018
  • Lab 7: For Loop and Text Files
    Lab Date: 2 October 2018 Due Date: 6 October 2018
  • Lab 8: Functions and Text Files
    Lab Date: 9 October 2018 Due Date: 13 October 2018
  • Lab 10: Arrays, Functions, and Files
    Lab Date: 23 October 2018 Due Date: 27 October 2018
  • Lab 11: Searching and Sorting
    Lab Date: 30 October 2018 Due Date: 3 November 2018
  • Lab 12: A Dynamic Array
    Lab Date: 6 November 2018 Due Date: 10 November 2018
  • Lab 13: C++ Strings
    Lab Date: 13 November 2018 Due Date: 14 November 2018
  • Lab 14: Structures
    Lab Date: 27 November 2018 Due Date: 1 December 2018