CMSC 160: Introduction to Algorithmic Design I
(Spring 2019)

  • MWF 10-10:50 am Ruffner 350
  • Tue  12:30-1:45 pm  Ruffner G56


Course Information Handout/Syllabus

Academic Honesty Handout
text cover Tutoring:
Thursday
3:30-5pm
Ruffner G56
Instructor:
Scott McElfresh
x2249       Ruffner 346
ProfScottMcElfresh @ gmail.com
Website

Office Hours:
(no appointment needed,
just drop by during these times)


yellow divider
Calendar

yellow divider
Mon, Jan 14

No Class
Tue, Jan 15

Topics:
  • Introduction
Lab exercise

Assigned for Wed:
  • Read Chapter 1 of the textbook.
Wed, Jan 16
DUE: Read Chapter 1 of the textbook.

Topics:
  • compilation
  • C++  program structure
Video:
Assigned:
Thu, Jan 17

Fri, Jan 18
BRING LAPTOPS
Due:  read sections 2.1 through 2.4
Due:  First history assignment

Topics:
  • console output
  • arithmetic
  • a little bit with variables
Assigned:
  • Re-read Sections 2.1 through 2.4 of the text book.
  • On page 36 of the book is a program about volume. Type this program into repl.it (link found in Jan 15 lab exercise) and then run the program. Get it such that the output is correct (as shown below it).    You  will wish to create an account so that you can save this.
  • You may find the following reading of use:  Arithmetic on the computer
yellow divider
Mon, Jan 21

MLK Holiday
No Class
Tue, Jan 22

Assigned:
Wed, Jan 23

Topics:
  • input/output and calculations

Assigned (via repl.it):
  • Limerick
  • Building Desks
  • Fuel Efficiency
  • Banquet of 3 choices
Thu, Jan 24

Fri, Jan 25
Due: beginning of class :   Limerick
Topics:
  • more with variables and characters
Assigned:
  • Read Chapter 3 of the text.
    • Be prepared with the Review questions on pages 84 and 85.
yellow divider
Mon, Jan 28

Topics:
  • conditionals
Tue, Jan 29
DUE:  beginning of lab :   Building Desks, Fuel Efficiency, Banquet of 3 choices

Lab exercise exploring Strings and Conditionals

Assigned (via repl.it):
  • Strings and Conditionals programs

Optional:
Computer Science internship presentations
3:30pm Ruffner 350
Wed, Jan 30

Topics:
  • conditionals
Assigned:
Sketch out a program which does the following:
  • Ask the user for a number of reading points earned.
  • Report with prize the student should recieve:
    • < 5 points:    Bookmark
    • 5-10 points:   Stickers
    • > 10 points:   Tshirt
Bring your program sketch to class on Friday (online or on paper).
Thu, Jan 31

Fri, Feb 1
DUE:  reading points assignment from Wed

No inclass topics.   Assignment sent via email and Canvas
yellow divider
Mon, Feb 4

Topics:
  • more with conditionals and strings
Tue, Feb 5

Lab exercise:  7 programs in repl.it
Wed, Feb 6

Topics:
  • intro to functions

Samples:
Poem program and bday program in Files section of Canvas.
Thu, Feb 7

Fri, Feb 8
DUE:  4 programs in repl.it
Topics:
  • function examples

Take Home Quiz handed out
yellow divider
Mon, Feb 11
Due: take home quiz

Topics:
  • scoping, etc.
Tue, Feb 12
DUE:  3 programs in repl.it

Lab exercise (in repl.it, Canvas, and email)
Wed, Feb 13

Topics:
  • Loops (while)

Photos:
Thu, Feb 14

Fri, Feb 15

Topics:
  • counting loops
  • summation loops
  • intro to algorithms
Assigned:
  • While loop reading (sections 4.1 and 4.2)
yellow divider
Mon, Feb 18

Topics:
  • algorithms
Tue, Feb 19

Exploratory on Loops
Wed, Feb 20

Topics:
Thu, Feb 21

Fri, Feb 22

Inclass Exam
yellow divider
Mon, Feb 25

Topics:
  • more with while loops
Tue, Feb 26

Exploratory on nested loops, including some practice programs to write
Wed, Feb 27

Topics:
  • programs in repl.it
Thu, Feb 28

Fri, March 1

Topics:
yellow divider
Mon, March 4 - Friday, March 8

Spring Break   No Classes

yellow divider
Mon, March 11

Topics:
  • intro to for loops
Tue, March 12

Lab exercise on more loops with strings
Wed, March 13

Topics:
  • functions on strings
Thu, March 14

Fri, March 15

Topics:
  • indexing in strings with loops
yellow divider
Mon, March 18

Assigned:
  • reading on vectors
Tue, March 19

Lab exercise exploring vectors
Wed, March 20

Topics:
  • working with vectors
Thu, March 21

Fri, March 22

Bring laptops for lab day
yellow divider
Mon, March 25

Topics:
  • calling functions with vectors
Tue, March 26

Lab exercise in repl.it
Wed, March 27

Topics:
  • calling functions with vectors

Assigned:  Start getting the software for the course.

  • All:  Ensure you can access LancerNet on your laptop (not Visitor)
  • Windows:  Get the software named putty.   you can get the MSI installer file or just get the file named   putty.exe.    If you do the latter, you do NOT need to run an installer.  Putting it on  your desktop is enough.
  • Mac users:   Nothing special to download.  Your machine should come with what you need.
Thu, March 28

Fri, March 29
DUE: lab in repl.it
Due:  software installed

Topics:
yellow divider
Mon, April 1

Topics:
  • dealing with data files
Tue, April 2
Due:  lab in repl.it

Lab exercise
Wed, April 3

Topics:
Thu, April 4

Fri, April 5

Inclass Exam

yellow divider
Mon, April 8


Tue, April 9

Lab exercise
Wed, April 10

Topics:
  • file output
Thu, April 11

Fri, April 12

Topics:
  • intro to structs/classes
Assigned:
yellow divider
Mon, April 15

Topics:
  • structs in vectors
Tue, April 16

Lab exercise
Wed, April 17

Topics:
Thu, April 18

Fri, April 19

Topics:
yellow divider
Mon, April 22

Topics:
Tue, April 23

Campus-wide Research Day
No classes
Wed, April 24

Topics:
Thu, April 25

Fri, April 26

Topics:
yellow divider
Mon, April 29

Topics:
Tue, April 30

Lab exercise
Wed, May 1

Thu, May 2

Fri, May 3

yellow divider
Mon, May 6

Final Exam
3-5:30pm
Details TBA


Tue, May 7
Wed, May 8
Thu, May 9

Fri, May 10

yellow divider