CPT 105 7A INTRODUCTION TO COMPUTER PROGRAMMING M/W · 2:00pm-3:40pm SYLLABUS METROPOLITAN COMMUNITY COLLEGE SECTION I: THE CLASS AND THE INSTRUCTOR COURSE SECTION AND TITLE: CPT 105 7A Introduction to Computer Programming ACADEMIC YEAR/QUARTER: Spring, 2002 INSTRUCTOR’S NAME: Alan R. Reinarz LOCATION OF CLASS: SOC 145 LOCATION OF LABS: SOC 127 (or Computer Technology Lab on any campus) METHODS OF CONTACTING INTRUCTOR: areinarz@metropo.mccneb.edu http://cot.mccneb.edu/areinarz METRO OFFICES HOURS* LOCATION PHONE FAX M/W/Th: 4:00p-5:00p T/Th: 1:00p-2:00p SOC 300 738-4089 738-4553 T: 3:30p-4:30p EVC 156 289-1364 289-1405 *Stated office hours may need to be changed due to special circumstances or events. If the student wishes to meet with the instructor at a time other than scheduled office hours, the student should make an appointment with the instructor. Home phone: (402) 556-3071 IMPORTANT DATES: DATE CLASS BEGINS: DATE CLASS ENDS: LAST DATE TO DROP CLASS: DATES CLASS DOES NOT MEET: 3/10/2003 5/21/2003 4/30/2003 SECTION II: THE COURSE COURSE DESCRIPTION: This course provides the student with a firm foundation in concepts used in structured and object-oriented computer programming. Emphasis is placed on logic used for problem solving, designing, developing, and implementing a computer program. COURSE PREREQUISITES: MAT 132 (or MAT 150) COURSE OBJECTIVES: Upon successful completion of this course, the student will be able to: 1. Demonstrate a basic understanding of the computer programming process. Metropolitan Community College Page 1 of 5 Revised: 12/02/2002 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. Demonstrate skill using various design tools and documentation methods to design and code a computer program. Describe key concepts, the structure, and routine tasks of procedural programs. Understand how modularization is used in designing a computer program. Apply various decision structures in a computer program. Apply various looping structures in a computer program. Design and implement a program using a control break. Define and manipulate single-dimensional and multiple dimensional arrays. Create a menu and validate user input. Understand how to process files in a computer program. Define basic concepts used in object-oriented programming. REQUIRED/SUPPLEMENTAL MATERIALS: Textbook: Edition: 2nd Materials: Programming Logic and Design Author: Joyce Farrell Publisher: Two 3.5 disks Course Technology SECTION III: STUDENT RESPONSIBILITIES METHODS OF LEARNING: The student will have specific assignments to read and master. These assignments are indicated in the course schedule and/or outlined by the instructor. The student should have read the material prior to class meeting date. This course requires students to work an average of 1.5 hours per week in hands-on, lab activity. Students are responsible for completing all lab work outside of the classroom. While you may choose to do this lab work someplace other than the College, Metro provides computer labs for students who do not have the required resources or facilities available to them. ATTENDANCE STATEMENT: The course will be covered partially by assigned portions of the text and may be presented in a sequence different from the text. Material will also be covered that is not in the text. Attendance is necessary to understand the course material. Each student is expected to recognize the importance of class attendance and promptness. CHRONIC TARDINESS AND ABSENCES MAY RESULT IN A REDUCTION IN THE FINAL GRADE BY 10%. Excessive absences or unsatisfactory progress will subject the student to administrative withdrawal from the course. If a student should miss a class for any reason, he/she is expected to cover the material he/she missed on his/her own. All work must be made up to the satisfaction of the instructor. RETAINING COPIES OF SUBMITTED WORK: On very rare occasion, the instructor has been unable to find any record of work that a student claims to have submitted. There may be several reasons this has occurred, including loss or theft of the work before it gets to the instructor, or oversight on the part of the student or instructor. The student should understand that grades are based upon achievement of learning objectives and successful completion of assignments. If work is missing, for whatever reason, it becomes impossible for the instructor to evaluate it and assign a grade. It is highly recommended that students keep backup copies of all work submitted toward the unlikely event that it might need to be resubmitted. STUDENT WITHDRAWAL: If you cannot attend and complete this course, you should officially withdraw by calling Central Registration, 457-5231. Failure to officially withdraw will result in either an instructor withdraw (IW) or failing (F) grade. The last date to withdraw is identified on the first page of this syllabus handout. ACADEMIC HONESTY STATEMENT: The College imposes specific actions in response to incidents of student dishonesty (cheating, plagiarism, etc.) that may include receiving a failing grade on a test, failure in the course, suspension from the College, or dismissal from the College. The disciplinary procedures are available in the Counseling/Advising Centers. Metropolitan Community College Page 2 of 5 Revised: 12/02/2002 Please note: ANY sharing or transfer of assigned work or test contents or answers between a student and any other person or party; in part or in whole; whether by disk exchange, E-mail, manual transcription, codevelopment of an assignment, or any other means; unless authorized by the instructor in advance in accordance with the guidelines in the following paragraph; will be considered academic misconduct and be sanctioned with disciplinary action in accordance with the above paragraph. Both originating and receiving parties will be liable to such sanction. Sharing of class notes and handouts is authorized. Obtaining assistance from others (including tutors or lab techs) for specific programming issues or debugging is authorized. However, no further collaboration is authorized for any standard assignment. Students wishing to collaborate further must contact the instructor for special assignments. Such special assignments must clearly identify in advance which portions are the responsibility of each individual student wishing to collaborate. The learning objectives, level of difficulty, and typical work involved for each portion must be comparable to that for a single student working alone on the corresponding standard assignment. Each portion will be graded individually. Each portion must clearly represent the competency of the individual responsible for it, and only that individual. The instructor reserves the right to refuse any request for special assignments. Indications of unauthorized collaboration and/or intent to defraud include, but are not restricted to, assignments, submitted by students (not necessarily from the same section) individually under each of their respective names; but which are essentially identical; are essentially identical except for mechanical changes such as differing variable or module names; are essentially identical except for differing comments; or exhibit essentially identical idiosyncratic features such as errors in syntax, style, logic, output formatting, or spelling. The same criteria apply to submissions, by one or more students, where those submissions bear indications of copying from any other unauthorized source. Authorized sources are the student textbook for the class, lecture notes, class handouts, and compiler/interpreter documentation and help materials. In summary, if you want a grade attached to your name and only your name (the only way I know MCC records grades), the work you submit must be your work and only your work. TECHNOLOGY RESOURCES: As you pursue your educational objectives, you may be required to use computer information technology resources at Metropolitan Community College. Use of these resources is a privilege and carries with it a responsibility to respect the rights and privacy of others, the integrity of facilities, and to follow Student Conduct Guidelines and College Policies. EDUCATIONAL SERVICES PROGRAM AREA IDENTIFICATION: Program Area Academic Dean Academic Dean’s office phone Computer Technology and Visual Arts Thos C. Pensabene 457-2660 The Office of the Academic Dean should be contacted with any questions or problems that your instructor is not able to resolve to your satisfaction. SECTION IV: INSTRUCTOR RESPONSIBILITIES METHODS OF INSTRUCTION: In each lecture during this course, the instructor will cover material the student needs to learn and accomplish. In addition, written handouts will be provided from time to time. These will be used to supplement the text material and expand the course. Instruction will consist mainly of lecture material presented by the instructor. In some classes, group discussion and demonstration will be utilized. In all meetings, discussion opportunities will be provided and the student is encouraged to ask questions and clarify information as the instructor is lecturing and/or presenting material. METHODS OF ASSESSING STUDENT PROGRESS: Labs and tests will be used to assess your understanding of the material. Metropolitan Community College Page 3 of 5 Revised: 12/02/2002 The majority of programming assignments (labs) require the student to take a basic set of program requirements and, based on knowledge gained from reading and class, develop a program using the typical program development process. Work will be evaluated on the adequacy of program planning; correctness of coding generated; usage of comments to describe and clarify program logic, data element usage, and input/output requirements; adequacy of program testing procedures; and adequacy of program documentation. Of course, the program should also run correctly. Full points are awarded for the inclusion of the specified item(s), with points being deducted for notable problems. Typical point assignments for these various aspects of programming, based on a 25 point total, are as follows: 1 input layout(s) 1 printer/output layout(s) 1 hierarchy diagram 2 flowchart or pseudocode 2 standard coding style & related issues 2 correct procedural logic/method 2 correct compile 10 correct run --------25 total Usage of comments in program: 1 general description of the program 1 misc. input/output requirements 1 purpose & use of each variable (variable table) 1 program logic (for each function/module) Both exams will be at least partially performance type tests. Write flowcharts, solve problems, write code; programs, algorithms. CRITERIA FOR DETERMINING FINAL COURSE GRADE: Letter grades will be determined using a standard 10% spread, where the percent is determined by adding up the total number of points achieved for assignments and tests and dividing by the total number of points possible. MAKE-UP TEST PROCEDURES: Students MUST be present on the day of an announced test. If the instructor is informed BEFORE THE TEST concerning a valid absence, other arrangements MAY be made. There will be no retakes of tests. Test dates are not firm and are therefore subject to change. LATE ASSIGNMENTS: Assignments tuned in late may lose 10% per class day for up to a week and may then receive a grade of 0. No assignments will be accepted after the test has been given. Also, see “Attendance” above. MAINTENANCE OF STUDENT RECORDS: Test will be returned after grading for review in class and then recollected and retained for record keeping purposes. All other work is graded and returned as soon as possible, usually by the following week. All grades are kept by the instructor in a grade book and on computer, which students may see at any time by asking the instructor. Metropolitan Community College Page 4 of 5 Revised: 12/02/2002 SECTION IV: SCHEDULE OF ASSIGNMENTS: DATES 3/10/03 3/12 3/17 3/19 3/24 3/26 3/31 4/2 4/7 4/9 4/14 4/16 4/21 4/23 4/28 4/30 5/5 5/7 5/12 5/14 5/19 5/21 CHAPTERS TOPIC Review Syllabus Overview of Computers and Logic Demonstrate SFC or Visio Software Understanding Structure Modules, Hierarchy Charts, & Documentation Demonstrate Visual C++ Software Writing a Complete Program Making Decisions Looping 1 2 3 4 5 6 Midterm Exam 1-6 Control Breaks 7 Arrays 8 Advanced Array Manipulation 9 Using Menus and Validating Input Sequential File Merging, Matching, & Updating Advanced Modularization Techniques Object-Oriented Programming Final Exam 10 11 12 Metropolitan Community College Page 5 of 5 ASSIGNMENTS Document Program (Create Flowchart & Pseudocode, Printer Spacing) Document Program Write C++ Program Document Program Write C++ Program Document Program Write C++ Program Document Program Write C++ Program VB Example Last Assignment Revised: 12/02/2002