COMP 141
Computer Science I: Programming Fundamentals
(CRN 18277/18278, Fall 2017)

Announcements


  • Code files and in-class examples may be found here.
  • Instructions for purchasing textbooks are here.
  • You can download Python for Windows, Mac, or older Macs (OSX 10.5 or older) from these links.
  • Computer Science tutoring is offered on Sunday, Monday, Tuesday, Wednesday and Thursday evenings from 7-10pm in Briggs 019.
  • The first lecture will be held on Wednesday, August 23, 2017.
  •  

    Course Description


    This course is an introduction to the fundamental concepts and practices of procedural programming. Topics include data types, control structures, functions, arrays, files, and the mechanics of running, testing, and debugging. Emphasis is placed on program design and problem solving techniques. The course also includes an introduction to the historical and social context of computing and an overview of computer science as a discipline.

    The syllabus for this course can be found at http://cs.rhodes.edu/welshc/COMP141_F17/syllabus.pdf.

    Book, Course Information, and Prerequisites


    Textbook: Programming in Python 3 Instructions on how to access the online textbook.
    Location: Barret Library 033
    Time: MWF 11-11:50am and 12-12:50pm
    URL: http://cs.rhodes.edu/welshc/COMP141_F17/
    Prerequisite: CS 141 does not assume any previous programming knowledge; however you should have sufficient high-school mathematics background to solve simple linear equations and to appreciate the use of mathematical notation. If you have already taken a computer programming course, you probably should be enrolled in COMP 142 (please see me if that is the case) .


    Course Instructor


    Instructor: Catie Welsh
    Office: Briggs 208
    Email: welshc@rhodes.edu (please include “CS 141" somewhere in the subject)
    Office Hours: Mon/Wed 3-4pm, Thurs. 10am-noon, or by appointment - Briggs 208







    Schedule

    Code files and in-class examples may be found here.


    This is a tentative schedule and subject to change as needed.

    Date Lecture Topic(s) Reading Assignment Homework
    W-August 23 Introduction slides   Fill out "Getting to Know You" worksheet - due 8/25
    F-August 25 The python language, output, variables slides Section 1.1-1.5 zyBook Assignment, complete before class on 8/28
    M-August 28 Math operations, input from keyboard Section 1.6 zyBook Assignment, complete before class on 8/30
    W-August 30 Literals, comments, intro wrap-up slides
    In-Class Lab
    Section 2.1-2.6 zyBook Assignment, complete before class on 9/1
    Program 1 - due 9/7 by 11:55pm
    F-September 1 if, if-else, relational operators slides Section 4.1-4.2 zyBook Assignment, complete before class on 9/6
    M-September 4 No Class - Holiday
    W-September 6 if-elif-else, and/or slides
    In-Class Lab
    Section 4.3-4.4  
    F-September 8 Functions slides Section 6.1 zyBook Assignment, complete before class on 9/11
    Program 2 - due 9/14 by 11:55pm
    M-September 11 Functions that take arguments, local variables slides Section 6.2  
    W-September 13 Graphics, intro to simplegraphics slides
    Simple Graphics Reference Sheet
       
    F-September 15 Lab, Graphics & Functions In-Class Lab   zyBook Assignment, complete before class on 9/18
    Program 3 - due 9/21 by 11:55pm
    M-September 18 Functions that return values slides Section 6.3  
    W-September 20 Lab: Functions, if-elif-else In-Class Lab   zyBook Assignment, complete before class on 9/22
    F-September 22 While Loops slides Section 5.1-5.3 Program 4 - due 10/1 by 11:55pm
    M-September 25 General Procedure for writing a while loop slides   zyBook Assignment, complete before class on 9/27
    W-September 27 Loops that count slides Section 5.4  
    F-September 29 For Loops slides
    In-Class Lab
    Section 5.5-5.7 zyBook Assignment, complete before class on 10/2
    M-October 2 Midterm Review Activity    
    W-October 4 Midterm 1
    F-October 6 break, continue slides Section 5.10  
    M-October 9 Input Validation Loops slides   zyBook Assignment, complete before class on 10/11
    Program 5 - due 10/19 by 11:55pm
    W-October 11 Nested Loops slides
    In-Class Lab
    Section 5.8  
    F-October 13 Saving Previous Values in Loops slides
    In-Class Lab
       
    M-October 16 Fall Break - No Class
    W- October 18 Reading/Writing from/to a file slides Section 12.1-12.2  
    F-October 20 Using loops to read files slides    
    M-October 23 File reading, split function slides
    In-Class Lab
      Program 6 - due 11/2 by 11:55pm
    W-October 25 File Reading Lab  
    F-October 27 Strings I slides Section 3.1 zyBook Assignment, complete before class on 11/1
    M-October 30 Strings II slides Section 7.1  
    W-November 1 Lists I 11am slides  12pm slides Section 8.1 zyBook Assignment, complete before class on 11/3
    F-November 3 Lists II 11am slides  12pm slides Section 8.2-8.3 zyBook Assignment, complete before class on 11/6
    Program 7 - due 11/16 by 11:55pm
    M-November 6 Review Activity    
    W-November 8 Midterm 2
    F-November 10 Lists III slides  In-Class Lab    
    M-November 13 Review of Midterm 2 and Lab from last time    
    W-November 15 2-D Lists slides Section 8.5 zyBook Assignment, complete before class on 11/17
    F-November 17 Tic-Tac-Toe with 2-D Lists slides    
    M-November 20 Tic-Tac-Toe with Graphics slides   Program 8 - due 12/5 by 11:55pm zyBook Assignment, complete before class on 11/27
    W-November 22 Thanksgiving Break- No Class
    F-November 24 Thanksgiving Break- No Class
    M-November 27 In-Class Lab    
    W-November 29 Dictionaries slides Section 8.12-8.14 zyBook Assignment, complete before class on 12/1
    F-December 1 More Dictionaries slides    
    M-December 4 Review Material Since Midterm 2  Lists & Strings Reference  Dictionary Reference    
    W-December 6 Wrap-up/Evals    
    11am Class
    F-December 8
    Final Exam,Time: 1-3:30pm
    12pm Class
    Wed-December 13
    Final Exam,Time: 1-3:30pm