COP3014
Programming I - C++
SPRING 2020 Syllabus
Instructor Information
POST SPRING BREAK VIRTUAL HOURS SCHEDULE (ADDED 3/19/2020)
Previously offered face-to-face hours Jan-SpringBreak (for completeness of syllabus)
Position |
Name |
E-mail |
Office |
Office hours |
Instructor |
Melina Myers (Vastola) |
melina@cs.fsu.edu |
LOV 105-B |
Wednesday 1-3pm or by
Appointment (Email to set up appt,
allow
24hrs notice) |
TA |
Ken Burnham |
krb13h@my.fsu.edu |
Dittmer 336 (TA17) |
Wednesday 11:30am-2:30pm |
TA |
Jeramiah Cummings |
jjc15h@my.fsu.edu |
LOV006 |
Tuesday 10am-12pm, Thursday 2-3pm |
TA |
Steven Perez |
scp15c@my.fsu.edu |
LOV006 (Majors Lab) |
Thursday 5-7pm, Friday 12-1pm |
TA |
Yu Miao |
ym15d@my.fsu.edu |
LOV006/Dittmer 336 TA12 |
Tuesday 5-7pm (in LOV006), Monday 12-1pm (Dit 336:TA12) |
***WHEN EMAILING, INCLUDE COP3014 IN SUBJECT LINE OF EMAIL***
Not sure who to email? Check the FAQ!!!!
Main Class and Recitations Schedule
Recitations are a mandatory part of the course. Students gain exposure to smaller programs in more of an intimate setting - the
Teaching Assistants lead the recitation classes to help further the student's understanding of programming as well as
helping with assignments and solidifying harder to understand topics.
REMEMBER, There are NO Recitations the first week of the course.
AS OF SPRING BREAK, RECITATIONS ARE CANCELLED FOR THE REMAINDER OF THE TERM DUE TO FORCED DISTANCE INSTRUCTION (added
3/19/2020)
ALSO AS OF SPRING BREAK, ALL CLASS LECTURES ARE ONLINE, THROUGH THE ZOOM TOOL IN CANVAS (added 3/20/20)
Sections |
Instructor |
Room |
Time |
Main Lecture: |
Melina Myers |
WJB 2005 |
TR 12:30-1:45pm |
Section 1 |
Yu |
MCH 315A |
Monday 9:05-9:55am |
Section 2 |
Yu |
MCH 315A |
Tuesday 8:00-9:15am |
Section 3 |
Ken |
MCH 315A |
Wednesday 9:05-9:55am |
Section 4 |
Steven |
MCH 315A |
Monday 10:10-11:00am |
Section 5 |
Jeremiah |
MCH 315A |
Tuesday 2:00-3:15pmpm |
Section 6 |
Ken |
MCH 315A |
Wendesday 10:10-11:00am |
Section 7 |
Steven |
MCH 315A |
Monday 12:20-1:10pm |
Course Website:
www.cs.fsu.edu/~vastola/cop3014
Prerequisite Course
- All students taking COP 3014 are required to have
previously taken and passed (with a C- or higher final grade) MAC
1140 or MAC 2311 or MAC 2233.
- If you have not completed this pre-requisite requirement, the CS
department will most likely drop you from this course in the first week of
classes. To be sure that your course schedule is correct, if you do not
have the pre-req you should drop yourself from this course and then adjust
your class schedule appropriately with the help of your academic
advisor.
Textbooks:
- Starting Out with C++: From Control Structures through Objects,
9th ed., Tony Gaddis.
This is available at the FSU bookstore, as well as online from multiple retailers.
This is the only book you will need for this course. If you have a previous edition, just ensure you're reading the
appropriate sections -- any previous editions should work fine.
Course Objectives:
This course is intended for majors in computer science or related
areas and focuses on the fundamental concepts of computer programming
using the C++ language. This course may be used as a programming
pre-requisite for COP 3330. Successful completion of this course satisfies the computer competency
requirement for the mathematics major. Upon successful
completion of the course, the
student should be able to:
-
Demonstrate a basic understanding of computer concepts, including
software and hardware.
-
Solve computing problems using a top-down approach in a
well-structured design using procedural programming techniques
- Design, implement, test, and debug a C++ program to solve a given problem
- Demonstrate knowledge and use of control structures used in procedural
programming, including sequence, selection, iteration, and functions.
- Make use of data types and structures in C++ including integer and
floating point types, arrays (one-dimensional, two-dimensional, strings)
and structs; arrays of structs and structs containing arrays. Have a
introductory-level understanding of the C++ class and be able to utilize
the standard IO and string classes and their member functions.
- Utilize fundamental algorithms studied to perform common tasks, such
as finding the max and min of a data set, counting, summing, tracking a previous
value, searching and sorting, reading until EOF, etc.
- Consider, compare, and evaluate code segments or simple algorithms for
relative efficiency in a basic fashion
- Make use of pointers: understanding their relationship with arrays,
their use in function parameters and returns, and their importance in dynamic memory allocation.
Grading Policy:
The final course grade will be computed as follows:
Homework / Programs / Recitation Exercises |
40 % |
Test 1 |
17.5 % |
Test 2 |
17.5 % |
Final Exam |
25 % |
Your homework average can be calculated with the following formula:
((HW Points + Ex Credit Points + Recitation Quiz Points)/(Total Number of points possible)) * 100
*** In addition to the scale listed above, in order to earn a C- or better
in the course, a student is required to achieve a test average of
C- or better. If the test average is below this level, the highest
possible course grade is a D. The test average can be computed with
the following formula:
TestAvg = ((Test1 * 17.5) + (Test2 * 17.5) + (FinalExam * 25)) / 60
Also:
Graduate students taking the course on S/U basis must earn a B- or better in the course to earn a S for their final course grade.
NOTE: THE OVERALL GRADE SHOWN IN CANVAS MAY NOT BE AN ACCURATE REPRESENTATION OF YOUR ACTUAL GRADE IN THE COURSE. ALWAYS USE THE SYLLABUS
BREAKDOWN TO CALCULATE YOUR OVERALL GRADE.
Letter Grade Scale:
DO NOT ASK for your grade to be rounded. There is no rounding of grades in this course.
Letter | Numerical Average |
A | 92.00 - 100 |
A- | 90.00 - 91.99 |
B+ | 88.00 - 89.99 |
B | 82.00 - 87.99 |
B- | 80.00 - 81.99 |
C+ | 78.00 - 79.99 |
C | 72.00 - 77.99 |
C- | 69.00 - 71.99 |
D | 62.00 - 68.99 |
D- | 60.00 - 61.99 |
F | 0.00 - 59.99 |
S/U Grading: For undergraduates, any grade A --> C- will be considered an S (Satisfactory). Any grade less than a C- will be
considered U (unsatisfactory). (added 3/28/2020)
Tests:
There will be two term tests and a final exam. You will be required to
bring and show your Student ID on test days to take the tests. The
final exam will be cumulative. The test format will be a mixture
of multiple choice, true/false, code reading and understanding, and is done on scantron, in the normal lecture class.
CHANGE TO TESTING DETAILS EFFECTIVE 3/20/2020: Exam 1 is done and completed as per the above policy. Midterm 2 will be an OPEN BOOK,
TIMED, ONLINE CANVAS exam that will be a mixture of multiple choice, and true false questions, AS WELL AS SHORT
ANSWER/FILL IN THE BLANK (ADDED 3/28/2020).
The FINAL EXAM will now be a take home programming assessment, specifically, homework 7. This means, our homeworks 1-6 will count for our
homework score, and homework 7 will act as our final exam.
Quizzes / Attendance:
Attendance and participation is expected, and REQUIRED to do well in the course.
There may also be some hand-in exercises (pop coding, if you will...) done in recitations for a grade. Any attendance grades or quiz grades
will count in the assignment average. If you miss a lecture, you do not need to inform me. However, if you miss
a recitation, you SHOULD inform your TA, and provide documentation if you want your absence to be
considered excused.
- Excused absences include documented illness, deaths in the family
and other documented crises, call to active military duty or jury duty,
religious holy days, and official University activities. These absences
will be accommodated in a way that does not arbitrarily penalize students
who have a valid excuse. Consideration will also be given to students
whose dependent children experience serious illness. We follow FSU's excused absence policy.
Programming Assignments
- There will be a variety of homeworks and programming projects
assigned. Some will be small and easy to complete in one sitting. Others
will be larger programming projects. Assignment specifications will be
posted on the web page.
- Turn in all assignments on time! Late assignments
will be accepted up to 24 hours after the due date, with the deduction of a
letter grade (10%). Assignments more than a day late will not be
accepted. Students are not permitted to "re-do" assignments. Assignment deadlines are STRICTLY enforced.
- STUDENTS are responsible for ensuring that their program file was
submitted correctly. This means making sure their file was
submitted without error, ON TIME, and also submitting the correct .cpp file. Students will not be permitted to "submit the correct file"
after the due date.
- Compiling -- Programs that do not compile are very tedious to
grade, and they show a lack of testing, which is a large part of
programming. There will be an automatic 5% point penalty for each
compile error in a student's code that has to be fixed in the grading
process. (This means that program submissions with compile errors will
likely earn very little, if any, credit). If there are more than 10 compilation errors
the program receives a zero. SO... Make sure your code COMPILES
before you submit it!!! Also, your programs must compile without
warnings - warnings are not the same as errors (programs can still "run"
even with warnings) but they are NOT acceptable and not good practice
to submit programs with warnings. 3% will be taken off for EACH WARNING
present in student's submitted code.
Any hw grade quesitons must be raised within a week of the homework being graded. After that, the grade listed is considered final.
Homework grade questions should be directed to the appropriate grading TA.
Web References:
Check the web page frequently! It will be continually updated with
essential course materials, such as assignments, examples, and some
notes. It will also include other supplements, such as instructions
for using the compiler, a FAQ (Frequently Asked Questions) page, and other
help links. It is your responsibility to check the web page regularly and
frequently for posted materials.
Miscellaneous Make-Up Policies:
1. A student will be allowed to make up a missed test if he or she has
a notice of illness from the Student Heath Center or family physician.
Any other excuses that are not medical or emergency related will be at
the discretion of the instructor, and must be approved in advance.
2. If a student has a legitimate excuse for missing an exam, they must notify Melina
within 48 hours of the exam date. Failure to do so will result in the student being unable to take a make up exam.
Let me know AS SOON AS POSSIBLE if you have an excused absense for an exam.
3. "I forgot" is not a valid excuse for missing a test. Test dates are posted on the course website well in advance
of the tests. Please keep up to date with the course calendar, test dates, and due dates of assignments.
Academic Honor Policy:
The Florida State University Academic Honor Policy outlines the
University’s expectations for the integrity of students’
academic work, the procedures for resolving alleged violations of those
expectations, and the rights and responsibilities of students and faculty
members throughout the process. Students are responsible for reading the
Academic Honor Policy and for living up to their pledge to “ . . .
be honest and truthful and . . . [to] strive for personal and
institutional integrity at Florida State University.” (Florida State
University Academic Honor Policy, found at
http://fda.fsu.edu/content/download/21140/136629/file/AHPFinal2014.pdf)
In addition to this information, please be aware of the
following:
- Students are expected to do their own work on any classwork or
test submitted for a grade (unless designated as a group assignment).
- It is NOT appropriate to work on assignments with other students or
to give or receive solutions to or from anyone before an assignment
is due and handed in (by all parties).
- It is NOT appropriate to share any amount of code with your classmates
- It is NOT appropriate to copy/paste, or use any amount of code from any web sources, fourms, etc. Our course notes, and
examples in our textbook are fair game, however.
- DO NOT POST YOUR CODE ONLINE. If I find your code online (online compilers, text sites, blogs,
help sites, etc...), no matter what the intent was in posting your code, this is automatically in violation
of the Academic Honor Policy and the appropriate actions will be taken. DO NOT USE online compilers, chat rooms, or
post any amount of your code on the web. I'll find out, trust me.
- If you've posted a homework question for a solution on sites like Chegg, course hero, etc. This is considered a violation of the honor code
policy.
- "Pay for code" is also obviously an honor code violation. You wont pass my tests anyways if you choose this route.
- Discussing solutions and techniques on assignments with other
students after the assignment has been graded and handed back
is okay, and encouraged.
- When you turn in work with your name on it, you are representing that
work as your own. If your submission matches that of
another student, this is considered a violation of the
Academic Honor Code.
- If you have previously taken the course, you are NOT permitted to submit your old work for any assignment
in the current semester. You must do your work from scratch. This is included in the FSU honor policy. See the
link above.
- If it is found that a student has violated the academic honor policy
the student is not permitted to drop or withdraw from the course, and must complete the course
with the sanctions accessed via the policy. This is a UNIVERSITY policy. (Added for clarification, 2/17/15)
- It is HIGHLY suggested that you only go to our course TA's or the instructor for help if/when needed. Outside tutors are
NOT recommended. If you feel you need One on One tutoring, ACE tutoring with FSU is a good resource.
- Examples found in the course textbook or in the course notes
may be used in programs, as long as the source is cited. This is
appropriate, as some hand-in assignments may be based on program examples
found in the book or contain other code that is provided to you in the
assignment specification
- A first violation of the honor code will result, at minimum
(but not limited to), a penalty of a 0 grade on the assignment
or test involved, along with a FULL reduced letter grade (-10%) in the course.
- Any second violation of the honor code will result in an automatic F
in the course, and possible proceedings before the Honor Court.
Americans With Disabilities Act
Students with disabilities needing academic accommodation should:
(1) register with and provide documentation to the Student
Disability Resource Center; and
(2) bring a letter to the instructor indicating the need for
accommodation and what type. This should be done during the
first week of class.
This syllabus and other class materials are available in
alternative format upon request.
For more information about services available to FSU students
with disabilities, contact the:
Student Disability Resource Center
874 Traditions Way
108 Student Services Building
Florida State University
Tallahassee, FL 32306-4167
(850) 644-9566 (voice)
(850) 644-8504 (TDD)
sdrc@admin.fsu.edu
http://www.disabilitycenter.fsu.edu/
Students approved to take exams at the SDRC office are expected to
take exams at the regularly scheduled time. Any exception to this
will only be granted with a valid documented reason and must be approved
by the instructor a week before the exam.
Syllabus Changes
Except for changes that substantially affect implementation of
the evaluation (grading) statement, this syllabus is a guide for
the course and is subject to change with advance notice.