Foundations I Syllabus
Name: Gordon Beavers
Office: 504 JBHT
Office Hours: 3:30 - 4:30 MTWR, or by appointment
Web Page: http://www.csce.uark.edu/~gordonb/
Office: 434 JBHT
Labs: Mon 1:30; Fri 1:30
Office Hours: Tues Thurs 9:00-12:00
Office: 434 JBHT
Labs: Wed 7:30; Tues Thurs 2:00
Office Hours: Wed 9:30 - 11:30; Tues Thurs 12:00 - 2:00
Computer Engineering Program Outcomes
(k) an ability to use the techniques, skills, and modern engineering tools necessary for engineering practice
Computer Science Program Outcomes
(e) compose, test, and document programs in several different programming paradigms
(f) develop significant expertise in at least one important programming language
The goal of this class is to develop fundamental computer-based problem solving skills in the following areas:
The pedagogical approach will be focused on solving problems using existing software modules (e.g., class libraries) and new modules when necessary. The syntax and semantics of programming language constructs will be introduced as needed in this context. Four programming assignments and their associated reports will be added to each student's programming portfolio. Labs will reinforce concepts taught in the lecture and also introduce students to the linux operating system.
A: over 90%
B: 80% - 89%
C: 70% - 79%
D: 60% - 69%
F: below 60%
Students must pass BOTH the homework portion of the class (labs and projects) AND the exam portion (midterms and final) with a grade of D or better in order to pass this course. Hence, an overall average greater than 60% may still result in a failure in some cases.
Grades will be calculated as follows:
Programming Projects: 20%
Midterm Exam: 15%
Final Exam: 25%
Quizzes: There will be short, in-class quizzes every Monday. Each will take no more than 10 minutes to complete and will be based on the lecture material presented during the previous week.
Labs: There will be weekly laboratory assignments. Grades for the labs will be based on completeness, correctness, and effort. Although lab materials are available on the web and can be submitted electronically, students are required to attend labs. Lab attendance will be taken in the first 15 minutes of the lab, and students who are not present will lose 50% of their grade for that lab. Lab assignments not completed during the lab period will be accepted during the 24 hour period after the end of the lab. Assignments submitted after this period will NOT be accepted.
Programming Projects: There also will be four relatively large programming projects The programming projects will be graded according to the following scale:
50% program correctness
20% software design
10% programming style
Programming projects must be submitted electronically by class time of the due date specified in the project description. Projects which are submitted within 24 hours of the due date will lose 10% of their grade. Projects will NOT be accepted beyond this 24 hour period. Partial credit will be given for programs which compile but which are not complete. Starting early on programming projects is strongly encouraged.
Students are allowed to discuss program design and other high level issues with each other. Students are also allowed to help each other understand specific compiler or run time error messages. However, unless otherwise specified, students are not allowed to work together on homework. Copying all or part of another person's program is strictly prohibited and will result in a grade of zero and being reported to the CSCE department head. Supplying printed or electronic copies of your homework to other classmates will also result in similar sanctions.
Exams: There will be two exams in this class: one midterm exam and a comprehensive final. All exams will be closed book, but each student will be allowed a single 8.5 by 11 sheet of notes. Calculators will not be needed or allowed. Make up exams will only be allowed under exceptional circumstances (e.g., a note from your doctor).
January 11, Chapter 1. Introduction to Computers
January 13, Chapter 2. Introduction to C++ Programming
January 20, Chapter 3. Introduction to Classes and Objects
January 27, Chapter 4. Control Statements: Part 1
February 3, Chapter 5. Control Statements: Part 2
February 10, Chapter 6. Functions and an Introduction to Recursion
February 22, Chapter 7. Arrays and Vectors
March 5, Chapter 8. Pointers
March 12, Friday, Midterm Exam covering chapters 2 - 7
March 15, Chapter 9. Classes: A Deeper Look, Part 1
March 19, Chapter 10. Classes: A Deeper Look, Part 2
March 22, Spring Break
March 31, Chapter 11. Operator Overloading
April 9, Chapter 15 and 17. Stream Input/Output and File Processing
April 18, Chapter 18, Class string and String Stream Processing
May 5, Wednesday 10:00 - 12:00, Final Exam (comprehensive, but emphasizing chapter 8 and the following material)
The CSCE Department, Engineering College and the University of Arkansas all have very strict guidelines regarding academic misconduct. Obviously, copying is not allowed on exams. Students are expected to submit their own work on individual programming projects. Lending or borrowing all or part of a program is not allowed. Students ARE allowed to borrow and modify any code on this class web site in their labs or programming projects. Instances of cheating will result in a grade of zero on the copied assignment/exam and the policy specified in the University of Arkansas Undergraduate Studies Catalog, Academic Regulations, Academic Dishonesty will be followed.
If any member of the class has a documented disability and needs special accommodations, the instructor will work with the student to provide reasonable accommodation to ensure the student a fair opportunity to perform in this class. Please advice the instructor of the disability and the desired accommodations within the first week of the semester.
If the university is officially closed, class will not be held. When the university is open, you are expected to make a reasonable effort to attend class, but not if you do not feel that you can get to campus safely. Assignment due dates will be postponed in case of inclement weather.