Georgia State University Department of Computer Science CSc 1301, Fall 2016 Course Title Principles of Computer Science I Course Course Description An introduction to the discipline of computer science. Computer programming is the primary focus of the course, with secondary focus on a breadth of computer science topics. These topics include algorithmic foundations, hardware concepts, software systems, applications, and social issues. Class Time and Place Monday, Wednesday 5:30 pm 6:45 pm Room 600, Langdale Hall Instructor Sanish Rai Room 711, 25 Park Place Email: sanishrai@gmail.com Office Hours: Monday and Wednesday 3:00 4:30 pm (except when preempted by meetings) and by appointment Textbook Csc 1301 Principles of Computer Science Second Custom Edition for Georgia State University Publisher: Pearson Programming Skills development: MyProgrammingLab Teaching Assistants Lab Instructor: Sindhura Veena Chavva (schavva1@student.gsu.edu) Office Hours: Monday, Wednesday 4-5 pm Location: 25 park place, 6 th floor CRN 8806 Thursday 12 pm- 1.40 pm & CRN 8807 Thursday 2 pm -3.40 pm Koushik Nallani (knallani2@student.gsu.edu) Office Hours: TBD CRN 8808 Thursday 4 pm- 5.40 pm & CRN 8809 Thursday 6 pm -7.40 pm Tutoring Assistants: Clifford Burton Chandler (cchandler7@student.gsu.edu) Tutoring Hours: Monday, Wednesday 3-5 pm, Location: Langdale Hall, Room 976 Kenny Dinh (kdinh4@student.gsu.edu) Tutoring Hours: Tuesday 12-2 pm, Thursday 3-5 pm Location: Langdale Hall, Room 976
Disclaimer: This course syllabus provides a general plan for the course; deviations may be necessary. Learning Outcome: The goals for this course are to introduce students to the field of computer science and the fundamentals of computer programming. Introduction to Computer Science I is specifically designed for students with no prior programming experience, and taking this course does not require a background in Computer Science. This course will include a variety of fundamental topics within the field of Computer Science. Java, a high-level, portable, and well-constructed computer programming language will be used and this was developed by Sun Micro-systems (now Oracle), to demonstrate those principles. Prepare students who may or may not intend to major in computer science to feel justifiably confident of their ability to write small programs. Map scientific problems into computational frameworks. Learning a language for expressing computation, algorithms- "recipes, writing and debugging programs. Learning about how to use computational tools to help model and understand data Learning about the process of moving from a problem statement to a computational formulation of a method for solving the problem Boolean logic, math, data types; arithmetic, repetition structures; text files; arrays and logic operators Obtain the ability to analyze a problem, and identify and define the computing requirements appropriate to its solution Development the ability to function effectively on teams to accomplish a common goal Position students so that they can compete for jobs by providing competence and confidence in computational problem solving. Prerequisites: None
Topics: Computer Science: An Overview uses broad coverage and clear exposition to present a complete picture of the dynamic computer science field. Accessible to students from all backgrounds, Glenn Brookshear uses a language-independent context to encourage the development of a practical, realistic understanding of the field. An overview of each of the important areas of Computer Science (e.g. Networking, OS, Computer Architecture, Algorithms) provides students with a general level of proficiency for future courses. Chapters Chapter 0 Introduction Chapter 1 Data Storage Chapter 2 Data Manipulation Chapter 5 Algorithms Chapter 8 Data Abstractions Building Java Programs: A Back to Basics Approach, Third Edition, introduces novice programmers to basic constructs and common pitfalls by emphasizing the essentials of procedural programming, problem solving, and algorithmic reasoning. By using objects early to solve interesting problems and defining objects later in the course, Building Java Programs develops programming knowledge for a broad audience. Chapter 1 Introduction to Java Programming Chapter 2 Primitive Data and Definite Loops Chapter 3 Introduction to Parameters and Objects Supplement 3G Graphics (Optional) Chapter 4 Conditional Execution Chapter 5 Program Logic and Indefinite Loops Chapter 6 File Processing Chapter 7 Arrays Lab experience derived from all chapters.
Grading Assignments and exams will be given numerical scores. These scores will be averaged at the end of the semester using the following weighting (might change in special case): Lecture and Lab attendance, participation 10% Assignments 30% Lecture Quizzes 15% Lab Quiz 10% Midterm 15% Final exam 20% Letter grades will be determined by ranking the numerical averages of all students in the class. A letter grade for the course according to the following scale. A: 90 100 B: 80 89 C: 70 79 D: 60 69 F: 59 and below Midterm There will be a Midterm given during class. The exam will be closed-book. If you are forced to miss the test because of illness or other catastrophe, you must notify me in advance. Before a makeup exam will be given, you must supply written evidence (e.g., a note from a physician or hospital) that you were unable to take the exam at the original time. Without such evidence, you will receive a score of zero for the test. Seating charts may be used for the tests, and may change from one test to the next. Also, multiple but equivalent exams may be used. Final Exam A two-and-a-half-hour final exam will be administered (tentatively) on Wed, December 7. The final exam will be closed-book. A seating chart may be used for the final exam, and it may be different from the one used for prior tests. There will be no makeup exam for the final. Also, multiple but equivalent exams may be used. Assignments There will be approximately nine assignments. The due date for each assignment will be posted with assignment. Assignments turned in after the due date will be considered late. The penalty for late assignments will be 10% per calendar day. No assignments will be accepted after the starting time of the final exam. Lecture Quizzes There will be about six-seven quizzes given during the recitation session. Missed quizzes cannot be made up. The lowest quiz score will be dropped. Lab Quiz There will be about two-three lab quiz for lab for which student must be present in the lab. Lab quiz will be based on programming. Missed quiz cannot be made up
Attendance Regular attendance is expected in both lecture and lab sessions; Please notify us in advance if you will be unable to attend because of business travel or other valid reason. Failing to attend may adversely affect your grade, since exams will cover material discussed in class as well as in the assigned readings; also, hints related to the assignments will be given in class. Students are responsible for all materials covered in class and assigned. Should a student be absent from class, it is his/her responsibility to get the notes, etc. for that missed class. More important, should there be assignments, it is the student responsibility to obtain such assignments. No excuse will be accepted for assignments not turned in because the student was absent when such assignment was given. Regular lectures might have quiz, if a student misses a quiz due to absence there will be no makeup quiz. Academic Honesty Plagiarism and cheating are serious offenses and may be punished by failure on exam; failure in course; and or expulsion from the University. For more information, refer to the "Academic Dishonesty" policy in the University Undergraduate Catalog. For this class, it is permissible to assist classmates in general discussions of computing techniques. General advice and interaction are encouraged. Each person, however, must develop his or her own solutions to the assigned projects, assignments, and tasks. In other words, students may not "work together" on graded assignments. A student, who submits an assignment that copies the work of another student, in whole or in part, will be assigned a grade of zero for that assignment. Any student found to be cheating on an examination will receive a score of zero for that exam. Disabilities Policy: In compliance with the Americans with Disabilities Act (ADA), all qualified students enrolled in this course are entitled to reasonable accommodations. Please notify the instructor during the first week of class of any accommodations needed for the course. Classroom Etiquette Please do not arrive late, leave early, or go in and out of class, since this behavior is very distracting. Do not disturb the class or your colleagues in anyway. Making unnecessary noise, discussions or any other behaviors which disturbs the class is prohibited. Withdrawals The last day to withdraw is October 11.