CS1428

apan@txstate.edu

Course Information

Lectures: T and H, 11:00 - 12:20, DERR 240
Labs: Section HL1: T 12:30 - 1:50, DERR 325 and Section HL2: R 12:30 - 1:50, DERR 325

Text: CS 1428: Foundations of Computer Science I : Zybook ISBN: 978-1-5418-4274-8
Prerequisites: MATH 1315 : College Algebra

Course Description: The goal of this foundations course is to get students to think algorithmically and improve their analytical skills for efficient problem solving. The course takes an in-depth look at the fundamental concepts of algorithm development. C++ is used as the primary language for introducing basic programming constructs such as decision statements, loops and arrays. Students taking this course will participate in a semester long project for which the entire class will work as a team to produce a software of substantial size. The exact nature of this project will be determined based on student interest and ability. Possible topics include software for controlling robots, mobile apps, and non-GUI PC games. No prior programming experience is required. Lectures will be interspersed with detours into the past, present and the future of computing.

Evaluation:

Class Participation/Quizzes5%
Labs10%
Assignments50%
Exam 010%
Exam 110%
Final15%

Expect approximately 6-8 programming assignments over the semester. There will be a lab every week. Rules for class participation will be discussed in the first class.

Late Policy: You get three slip days over the semester. You may use these slip days for an automatic extension on any assignment. (Note, the slip days do NOT apply to the exams or lab assignments). If you turn in a late assignment after you have exhausted your slip days, it will be graded based on the following scheme:

days latepoints off
110%
230%
350%
> 3100%

Attendance Policy: Come to class!

Makeup Policy: Make up exams will only be given in exceptional situations, i.e., a documented medical emergency. Talk to the instructor for other examples of exceptional situations.

Withdrawal Policy: We will follow the withdrawal and drop policy set up by the University and the College of Science and Engineering. You are responsible for making sure that the drop process is complete. Come see me before you decide to drop the course.

Academic Honesty: You are expected to adhere to the University's Academic Honor Code as described here. Unless otherwise stated, all assignments are to be done individually. You may discuss general strategies for attacking assignment problems with other students in the class but you must write your own code. There will be at least one programming assignment where you will be asked to work in pairs. The term project will involve working with the entire class. Rules for collaboration on such projects will be explained at the time the projects are assigned. Rules for collaboration on such projects will be explained at the time the projects are assigned.

ADA Compliance: Any student with a disability requiring special accommodations should inform me during the first two weeks of classes. The student should also contact the office of disability services at the LBJ student center.

Schedule

Week # Date Topic Reading Notes
Week 0 Aug 27T Syllabus and Introduction Ch 1
Aug 29H The Basics
Algorithms
Abstraction
Ch 1 Assg 0 out
Week 1 Sep 3T C++ Program Structure
Console I/O
Ch 2
Sep 5 H Expressions and Operators
String Processing
Ch 2 Assg 1 out
Week 2 Sep 10T Expressions and Operators cont.
Conditionals
Ch 2,3
Sep 12H Conditionals cont.
Ch 3
Week 3 Sep 17T Loops Ch 4 Assg 2 out
Sep 19 H Loops cont. Ch 4
Week 4 Sep 24T Arrays
File I/O
Ch 5, 9
Sep 26H File I/O
Review for Exam 0
Ch 1-5, 9
Week 5 Oct 1T Exam 0 Ch 1-5 Assg 3 out
Oct 3 H Exam 0 Handback
Random Numbers
Week 6 Oct 8T File I/O
Oct 10H File I/O
Functions
Ch 6, 9
Week 7 Oct 15T Functions
Ch 6 Assg 4 out
Oct 17H Parameter Passing and Scoping Rules
Ch 6
Week 8 Oct 22T Parameter Passing and Scoping Rules Ch 6
Oct 24H Parameter Passing Modes
Passing Arrays
Ch 6
Week 9 Oct 29 T Overloaded Functions
Default arguments
Ch 6
Oct 31 H Data Representation and Organization
Structs
Handout Assg 5 out
Week 10 Nov 5T Searching and Sorting
Algorithmic Complexity
Ch 15
Nov 7 H Searching and Sorting
Algorithmic Complexity
Review for Exam 1
Ch 6, 15
Week 11 Nov 12T Exam 1
Nov 14 H Jared Wallace and Mason Egger talk
Week 12 Nov 19 T TBD (Gentry) Assg 6 out
Nov 21 H Recursion (Gentry) Ch 8
Week 13 Nov 26 T High-performance Computing Handout
Week 14 Dec 3 T Libraries and APIs
Data Science
Handout
Dec 5 H The End
Week 15 Dec 10T Final Exam 11:00 - 1:30 PM Ch 1-6, 15

Staff

Instructor


Apan Qasem
Office: CMAL 307D.2
Phone:(512) 245-0347
E-mail: apan
Office Hours T 2-4, H 2-4

TA


Gentry Atkinson
E-mail: gma23
Office Hours: TBA

Grader

Johana Di Girolamo
E-mail:
Office Hours: TBA