CSCE 145: Algorithmic Design I

General Information for Fall 2023


Dr. J.J. Shepherd 
Office: Horizon II 2215


Office Hours: By appointment

Class Website:

CSCE Dropbox Link:

Academic Bulletin Description

Problem-solving, algorithmic design, and programming.

Learning Outcomes

1.       Solve problems using a computer

2.       Read and design algorithms

3.       Design data structures

4.       Demonstrate the ability to use a software development environment to construct, execute, test, and debug software

5.       Demonstrate the ability to program a computer in a high-level language.

Prerequisite or Corequisite

MATH 111 or MATH 115

Course Description

This is the first course in Computer Science and Engineering. It introduces the design of computer algorithms and their implementation in the Java programming language. The prerequisite is MATH 115 or enrollment in MATH 141. No prior programming experience is assumed, but you should already have some experience using a computer. The goals of the course are

·         Introduce computational problem-solving techniques

·         Introduce the use of computers for the construction of software solutions

·         Introduce procedural abstraction

·         Introduce data abstraction and elementary concepts of object-oriented programming

·         Introduce the development of structured, modular algorithms and programs

·         Introduce the Java programming language.

·         Convey some of the myriad uses for computing. 

Course Overview

·         This course will be delivered via in-person lectures. Links to all materials will be found at the course’s website.

·         Lectures present the principles of algorithmic design and how to express your designs in the Java programming language. Lectures occur during the scheduled lecture times at the scheduled location. Materials that accompany the lectures are posted to the course’s website regularly.

·         Laboratories present a problem that relates to the materials found in the lectures. These are smaller problems that require the submission of both a programming solution and a written lab report. To best assist with this work, a graduate teaching assistant and an undergraduate teaching assistant hold regular lab meetings each week to review topics previously presented in lecture and answer questions. These occur during the scheduled lab times.

·         Supplemental Instruction (SI) is available to assist you in better understanding the course material. The SI program provides peer-facilitated study sessions led by qualified and trained undergraduate SI leaders who attend classes with you and encourage you to practice and discuss course concepts in sessions. Sessions are open to all students who want to improve their understanding of the material, as well as their grades. SI sessions will focus on the most recent material covered in class. Each SI leader holds three sessions per week to go over homework assignments, prepare for exams, and discuss programming examples. Information about the time and place for supplemental instruction can be found here. You can contact the Student Success Center at (803) 777-0684 if you have questions about SI.

·         The instructor will reply to all feedback in a reasonable amount of time; the same is expected of the students. Specifically,

o   Communication: Responses to email communication and questions will be provided within a day or two. More details can be found in the section labeled, “Email and Communication Expectations”.

o   Grading: Grades for assignments will be returned within 1 week of due date. More details can be found in the section labeled, “Grading”.

Class Website

You are responsible for checking the class website regularly. Announcements and assignments will be posted. The URL is:


Walter Savitch, Java: An Introduction to Problem Solving and Programming (7th Edition), Prentice Hall, 2014, ISBN-13: 978-0133766264.
All readings/materials comply with copyright/fair use policies.

Expected Technology

Programs are expected to be written in a Java integrated development environment (IDE) like Eclipse, IntelliJ, NetBeans, etc. Also, some assignments require a word processor such as Microsoft Word, OpenOffice Writer, or Google Docs.

This course requires regular, reliable computer and internet access. Assignments are to be developed on a computer and submitted via the CSCE Dropbox by their designate date and time. The college recommendations for a computer are found here

If you have tech-related questions or need help with the software, please contact the Division of Information technology (DoIT) at”

Attendance Policy

Students are expected to attend all lectures and labs at their scheduled times. In addition, students also must keep track of the course materials regularly, and log into the CSCE Dropbox to submit assignments before the due time.

Face Coverings

Per university policy, face coverings are optional but encouraged and voluntary masking is supported.

Class Meeting Times

·         Lectures







1:10PM – 2:00PM



·         Lab Question and Answer Sessions







04:00 pm-05:40 pm

COL 3012



02:00 pm-03:40 pm

COL 3012



 *MTWRF is Monday, Tuesday, Wednesday, Thursday, and Friday respectively

Email and Communication Expectations

·         Before sending an email, check the Frequently Asked Question’s section on the course’s website.

·         All communications are expected to be conducted professionally.

·         The instructor and TA’s check emails regularly during the week from 9:00am till 5:00pm Monday through Friday. Any email sent outside of those stated times may not receive a response until the next day or week.

·         Email responses may take a few days or longer, due to the large volume of students.

·         Communication is assumed to be about the course and its subject matter, and anything outside of the course’s material may not receive a response.

·         Communication that does not follow the above guidelines or are unprofessional may be ignored or reported to the Office of Student Conduct.


·         Students are expected to know how to use basic computer functionality, which includes but not limited to creating/saving/moving files and folders, downloading files from a website, installing software, navigating websites, compressing/zipping/unzipping files, and uploading files to a website. In addition, students are expected to understand the basics of a file system structure which includes understanding folders, directories, paths, files and file extensions.

·         Students are expected to keep track of all course materials including but not limited to the syllabus, announcements, lectures, assignments, emails, grades, etc. Instructions or requirements that are not followed in these materials may result in points being deducted.

·         All assignments are expected to be uploaded to the CSCE Dropbox before their due date and time. It is strongly encouraged to submit assignments early, and if there are problems then the instructor needs to be made aware immediately.

·         We do not accept late work in this course. Assignments are made available to everyone at the same time and are due at the same time. No credit will be given for late assignments. Exceptions to the late policy may be made on an emergency basis.

·         Make-up work for assignments can be requested before the assignment is due. If there is a known conflict that will prevent submitting work at the assigned time, then the instructor must be informed before the deadline. These requests must be done electronically via email. Only a small fraction of assignments can be made up for any excuse(s), which is limited to exactly 1 Homework, 1 Lab Solution, and 1 Lab Report. Outstanding make-up work must be completed and submitted before any additional make-up work can be issued.

·         Laboratory solutions are short programs that follow concepts presented in lecture.  Students are expected start on these assignments early and ask questions often. The lab solution must be submitted electronically before the indicated time on the day they are due, and they must be done individually.

·         Laboratory reports are due alongside the lab solution.  They are written assignments that consist of a short description of the lab, and then a demonstration of the material.  Also, some supplemental questions may be given for each lab. The lab report must be sent in electronically before the indicated time on the day it is due, and they must be done individually.

·         Homework assignments are larger programs to be written outside of class. They are to be sent in electronically before the indicated time on the day they are due, and they must be done individually.

·         Homework Redo assignments occur infrequently throughout a semester. These assignments allow students to earn back lost points on past assignments – Homework, Lab Solution, and Lab Report. Students are expected to read through the details regarding the assignment and follow the instructions carefully and directly. Submissions that do not follow the instructions will be disqualified and no points will be earned back. Only a few Homework Redo assignments occur throughout the semester, and students are expected to use them carefully and effectively.

·         The final exam is take-home, open-book, and open-notes. This exam is optional and replaces only the lowest homework grade. The exam must be done individually only using authorized materials approved by the instructor. Communication regarding the exam must only be between a student and the instructor or their section’s teaching assistants. The exam’s required work, programming solution and written portion, must be submitted electronically before the indicated time on the day they are due, and no late work will be accepted.

·         All programming assignments (labs solutions, homework, and exam solutions) are to be written in the Java programming language and require the source files (JAVA file extension) to be submitted. All written assignments are to be submitted in a common word processor format (DOC, DOCX, or PDF file extensions).

·         Students are expected to keep track of grades regularly.  Grades are available on the CSCE Dropbox. 

·         Before submitting assignments, students are expected to check their work to ensure quality. For programming solutions, we expect students to test the solution to ensure it both meets the requirements and functions well. Solutions that do not meet requirements or does not function well will have points deducted. For written assignments, the answer must answer the questions fully or points will be deducted.

·         While submitting assignments, students are expected to check to make sure they are uploading their work to the correct location in the CSCE Dropbox. The CSCE Dropbox has the name of each assignment where it must be submitted. Assignments submitted to the wrong locations will have points deducted.

·         Students MUST NOT EVER RESUBMIT OR MODIFY an assignment AFTER its deadline, unless directly told by the instructor. Otherwise, the assignment will be considered LATE and will receive no credit.

·         Regrade requests may only be made within ONE WEEK after the assignment has been graded. These requests must be done electronically via email to the instructor. Regrade requests only apply to previously submitted work and we do not accept additional work after the fact. Multiple, frivolous regrade requests will disqualify future regrade requests.

·         No work or regrade requests can be accepted after the last day of class. If there are grades missing by the last day of class those assignments will automatically be assigned a 0.

·         A grade of Incomplete (“I”) is only given in extreme cases when a student is unable to complete some portion of the assigned course work because of a significant incident. These may include an unanticipated illness, accident, work-related responsibility, family hardship, or verified learning disability. An incomplete will only account for 20% of the overall course grade, and it only applies to work after the reported incident. In addition, a student must be in good grade standing, a “C” or greater, at the time of the incident to qualify.

·         Grades are assigned based on the following criteria:

Letter Grade

Earned Points Percentage


90% - 100%


85% - 89%


80% - 84%


75% - 79%


70% - 74%


65% - 69%


60% - 64%


0% - 59%


Grade Breakdown



Percentage of Overall Grade

Lab Solution Average
(9 at 0.9% each)


Lab Reports Average
(9 at 0.9% each)


Homework Average

(8 at 10% each)


Final Exam




*Final Exam is optional and replaces a lower, previous homework assignment.

Exam Dates

Final Exam



Accommodating Disabilities

Reasonable accommodations are available for students with a documented disability. If you have a disability and may need accommodations to fully participate in this class, contact the Student Disability Resource Center:  803-777-6142, TDD 803-777-6744, email, or stop by LeConte College Room 112A. All accommodations must be approved through the Student Disability Resource Center.   See

·         Library Services (

·         Writing Center (

·         Carolina Tech Zone (

Honor Code / Cheating / Code of Conduct

All students must review the Office of Student Conduct and Academic Integrity sanctions.  This information may be found at more of the following sanctions may be imposed for Academic Integrity or Code of Conduct Violations: 1) Expulsion from the University; 2) Suspension from the University for a period of no less than one semester; and/or Probation.  A combination of the above sanctions may be implemented.


Significant enough Code of Conduct violations, such as Falsification, will result in an automatic F for the course.

Furthermore, cheating is defined as giving or receiving unauthorized aid on any assignment, test, or project. The only authorized materials to be used on assignments are supplied by the instructor. Offenses will be reported in accordance with the Carolina Community student handbook.

Academic sanctions for this course are as follows. For every offense, the student will be notified, and the evidence will be sent to the Office of Student Conduct and Academic Integrity. Upon confirmation the student will receive a grade of 0 for the assignment for the first offense - that cannot be made up for any reason including exams. Any other confirmed violation(s) will result in an automatic grade of “F”.

***Everything is subject to change***