COMP 141
Computer Science I: Programming Fundamentals
(CRN 28279, Spring 2018)

Announcements


  • 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-9pm in Briggs 019.
  • The first lecture will be held on January 10, 2018.
  •  

    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_S18/syllabus.pdf.

    Book, Course Information, and Prerequisites


    Textbook: Programming in Python 3.3 Instructions on how to access the online textbook.
    Location: Briggs 019
    Time: MWF 11-11:50am
    URL: http://cs.rhodes.edu/welshc/COMP141_S18/
    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: Tues/Thurs 2-4pm, 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-January 10 Introduction slides   Fill out "Getting to Know You" worksheet - due 1/12
    F-January 12 The python language, output, variables slides Section 1.1-1.5 zyBook Assignment, complete before class on 1/17
    M-January 15 Holiday- No Class
    W-January 17 Math operations, input from keyboard slides Section 1.6 zyBook Assignment, complete before class on 1/19
    F-January 19 Literals, comments, intro wrap-up slides
    In-Class Lab
    Section 2.1-2.6 zyBook Assignment, complete before class on 1/22
    Program 1 - due 1/25 by 11:55pm
    M-January 22 if, if-else, relational operators slides Section 4.1-4.2 zyBook Assignment, complete before class on 1/24
    W-January 24 if-elif-else, and/or slides
    In-Class Lab
    Section 4.3-4.4
    F-January 26 Functions slides Section 6.1 zyBook HW, complete before class on 1/29 Program 2 - due 2/1 by 11:55pm
    M-January 29 Functions that take arguments, local variables slides Section 6.2
    W-January 31 Graphics, intro to simplegraphics slides
    Simple Graphics Reference Sheet
    F-February 2 Lab, Graphics and Functions In-Class Lab zyBook Assignment, complete before class on 2/5
    Program 3 - due 2/8
    M-February 5 Functions that return values slides Section 6.3
    W-February 7 Lab: Functions, if-elif-else In-Class Lab zyBook Assignment, complete before class on 2/9
    F-February 9 While Loops slides Section 5.1-5.3 Program 4 - due 2/20
    M-February 12 General procedure for writing a while loop slides zyBook Assignment, complete before class on 2/14
    W-February 14 Loops that count slides Section 5.4
    F-February 16 For Loops slides Section 5.5-5.7 zyBook Assignment, complete before class on 2/19
    M-February 19 break, continue slides  In-Class Lab
    Practice Problems
    W-February 21 Midterm 1 Review
    F-February 23 Midterm 1
    M-February 26 Input Validation Loops slides Section 5.10 Program 5 - due 3/13
    W-February 28 Nested Loops slides Section 5.8 zyBook Assignment, complete before class on 3/2
    F-March 2 In-Class Lab
    M-March 5 Spring Break - No Class
    W- March 7 Spring Break - No Class
    F-March 9 Spring Break - No Class
    M-March 12 Saving Previous Values in Loops slides
    In-Class Lab
    W-March 14 Reading/Writing data from/to a file slides Section 12.1-12.2
    F-March 16 Using Loops to Read Files slides
    M-March 19 File Reading, Split Function slides
    In-Class Lab
    Program 6 - due 3/27
    W-March 21 Strings I slides Section 3.1
    F-March 23 Strings II slides Section 7.1 zyBook Assignment, complete before class on 3/26
    M-March 26 Strings III slides
    W-March 28 Lists I slides
    Review Activity
    Section 8.1-8.3 zyBook Assignment, complete before class on 4/2
    F-March 30 Holiday- No Class
    M-April 2 Midterm 2 Review List and String Functions
    W-April 4 Midterm 2
    F-April 6 Lists II slides  In-Class Lab Program 7 - due 4/15
    M-April 9 Review of Midterm 2 and Lab from last time
    W-April 11 2-D Lists slides Section 8.6 zyBook Assignment, complete before class on 4/13
    F-April 13 Tic-Tac-Toe with 2-D Lists slides
    M-April 16 Tic-Tac-Toe with Graphics slides Program 8 - due 4/27
    W-April 18 In-class Lab
    F-April 20 Binary Numbers slides Section 3.9
    M-April 23 Review Activity
    W-April 25 Review
    W-May 2 Final Exam,Time: 1-3:30pm