MTH4300: Algorithms, Computers, and Programming II (Spring 2023)

Instructor: Ivan Matic
Class website: imomath.com/bmath
email: Ivan.Matic@baruch.cuny.edu
Class time: MoWe 9:55AM - 11:35AM
Class location: online and B 6-125 (Zoom information)
Section code: HMWA
Office hours time: MoWe 11:40AM - 12:40PM
Office hours location: M: online; W: in person (Zoom information)
Grading formula
Homeworks and quizzes: up to 25% *
Midterms: 50%
Final: 25% **
* If the scores from the proctored exams (midterms and final) are consistent with the homework score, then the homework will count 25% of the grade. If the scores from the proctored exams are significantly lower than the homework score, then the homework score will be replaced with the average score of the proctored exams.
** If a student receives a failing grade on the final exam, then the grading formula will not be used and the student will get F.

Content of the course

Prerequisite: MTH 3300 or CIS 3100 and 1 semester of calculus (MTH 2006, MTH 2007, MTH 2107, MTH 2201, MTH 2206, 2207, 2010, 2610, 2610H). Not open to students who have completed CIS 4100 or CIS (STA) 3363.
This course is intended to be a sequel to MTH 3300 and focuses on the notion of classes, along with the concepts of references, pointers, inheritance, polymorphism, parallel programming, and usage of standard libraries. The implementation of classes in a practical setting, such as scientific computing or quantitative finance, will be part of the course. The topics will also include administration of unix systems, secure connections, and management of remote servers.
Suggested reading: Bjarne Stroustrup: The C++ Programming Language, 4th Edition, Addison-Wesley Professional (2013), ISBN:978-0321563842
Lecture notes and videos: https://imomath.com/bmath/index.cgi?page=m4300M

Learning goals

Upon completion of this course, students will be able: to make use of pointers; to create classes (abstract data types); to create constructors and destructors; to write class methods; to overload functions and operations (polymorphism); to understand the notion and the implementation of inheritance; to properly implement the Standard Template Library in the C++ source codes; to solve problems efficiently by constructing and implementing appropriate algorithms and data structures such as lists, stacks, and binary search trees; to improve efficiency of programs by using parallel algorithms on multi-processor systems.

Grading Policies

Homeworks and quizzes

The weekly homeworks and quizzes contribute to \(25\%\) of the course grade. The assignments will be graded by code autograder.
There are 8 graded assignments that count as homeworks and quizzes. The first quiz is "Academic Integrity Quiz" and is given during the first class. The due dates for the remaining assignments are maintained in the table on the website.
Homeworks must be done individually and without help from others. Students are not allowed to show the homework questions to others. It is illegal to use artificial intelligence, and it is illegal post the homework questions on websites or public forums. Homework questions are confidential, copyrighted, and intellectual property of Baruch College. You do not have a permission to copy the homework questions and show them to anyone who is not an instructor at Baruch College.
Homeworks are due 5 minutes before the class starts. In other words, at the time the class starts, students are already 5 minutes late to submit the homework and the submission will not be accepted. This rule will be strictly followed. The homework grade represents the ability of students to complete and submit the homeworks on time. The solutions will be posted shortly after the homework is collected, and late submissions would mean an unfair advantage to some of the students.
With a well-documented reason, a student may miss one homework during the semester. In that case the score for the missed homework will be replaced by the re-scaled score from the final exam.

Midterms

There are two written midterm exams (\(M_1\) and \(M_2\)). The score from each of the midterm exams contributes \(25\%\) to the grade. The midterms are scheduled for Wednesday, March 1, 2023 and Wednesday, April 19, 2023.

Grade and Curve

The course grade will be determined according to the formula \begin{eqnarray*}T &=& \frac14\mbox{min}\left\{H, 0.33\cdot M_1+0.33\cdot M_2+0.34\cdot F + 10\right\} \\ && + \frac14 M_1+\frac14 M_2+\frac14 F. \end{eqnarray*} In the end the curve will be used so that at least \(25\%\) of the class gets \(A\) and \(A-\), and at least \(50\%\) of the class gets the grade \(B-\) or higher.

Recording policies

Students who participate in this class with their camera on or use a profile image are agreeing to have their video or image recorded. If you are unwilling to consent to have your profile or video image recorded, be sure to keep your camera off and do not use a profile image. Likewise, students who un-mute during class and participate orally are agreeing to have their voices recorded. If you are not willing to consent to have your voice recorded during class, you will need to keep your mute button activated and communicate exclusively using the "chat" feature, which allows students to type questions and comments live.

Proctoring of exams

Students taking in-person or hybrid classes who fail to follow the vaccine mandate per CUNY policy will be subject to potential academic withdrawal that could also impact their financial aid and might not be eligible for refunds for the course.

The midterm exams and the final exam are planned to be in person. Make sure that you plan accordingly and arrive on campus with sufficient time to comply with the requirements of the Campus Security. If the Campus Security does not grant you the access to the building because you failed to follow the rules and policies, you will receive 0 points for the missed exams.

Online exams

In the case that some or all of the in-class exams are switched from in person to online mode, the students will be required to have their cameras on during the exams. The students will not be allowed to access any online services or external websites with content that is in any way related to the course. In the case of online exams, the students will be allowed to access only these three web services: 1) the web page with exam questions; 2) the dropbox web interface to upload scanned work; and 3) the official college e-mail server in the case that student needs to contact the instructor.

Missed classes

If a student misses a class, it is his/her responsibility to find out the contents of the class, watch the video recording if it is made, and read the notes.

Course policies may be introduced, discussed, or clarified during the classes. A student cannot use a missed class as an excuse for not obeying the policies.

Missed exams

All students must take the written exams at the same time. This rule will be strictly enforced to ensure the fair grading.
Late homeworks will not be accepted. Homework is a grading instrument that needs to determine the ability of students to complete and submit the assignments correctly and on time.
In the case of a missed written in-class exam, the student will be required to submit a written appeal with a well-documented reason for missing the exam. If the appeal is approved, the re-scaled score on the final may be used as the score for the missed exam. Two missed exams result in an automatic F.
The math department's policy states that any score on the final below 50% may result in an automatic failure in the course, regardless of scores received during the semester. Thus, students who miss the final will receive an F. In the case of an extraordinary circumstance resulting in the missed final, a student who had a term average of at least 55% may appeal to the Mathematics Department. If that appeal is accepted, the student may receive an INC grade. A student who misses the final and has term grade lower than 55% will receive F regardless.

Disability accommodations

To receive special accommodations for the lectures and exams, students with disabilities need to contact the Office of Services for Students with Disabilities at (646) 312‑4590. More information can be found at Student Disability Services Website.

Academic integrity

Any act of a student that provides an unfair advantage to themselves or an accomplice is dishonest. If during an exam a student has within reach an object that can be used to gain an unfair advantage, the student is violating academic honesty codes, regardless of whether the student is observed to use such object. For example, electronic devices (that include but are not limited to: phones, headphones, earbuds, smart watches, or smart glasses), even if turned off, cannot be on desks or on persons during exams.
Academic dishonesty will not be tolerated. Depending on the severity of the offense, cheating on an exam will result in a grade of 0 on that exam, or in a final course grade of D, or in a final course grade of F. Cheating on one of the homeworks will result in score 0 on all of the homeworks. All offenders will be reported to the Office of the Dean of Students who will assign an administrative punishment in addition to the academic punishment.