Columbia College Online Campus

CISS 242

Page |1

CISS 242 B Programming II Summer Session 15-55 May 30 – July 23, 2016 Course Description This course introduces more advanced steps to program design and is a continuation of CISS 241. A disciplined approach to problem solving and algorithm development will be stressed using top-down design. Topics include strings, pointers, recursion, classes, and methods, and operator overloading. Prerequisite: Grade of C or better in CISS 241 Proctored Exams: Final Exam

Textbooks Gaddis, Tony. Starting Out With C++: From Control Structures Through Objects. Addison Wesley, 2015 (8th edition) ISBN: 978-0-13-376939-5 Textbooks for the course may be ordered from MBS Direct. You can order  online at http://direct.mbsbooks.com/columbia.htm (be sure to select Online Education rather than your home campus before selecting your class)  by phone at 800-325-3252 For additional information about the bookstore, visit http://www.mbsbooks.com.

Course Overview This class is the second in a three-course sequence, a continuation of CISS 241, introducing computer programming using the C++ language. This class uses the C++ programming language, but the principles learned and skills obtained are applicable to programming in any language. In fact, one of the objectives of this course is to instill the ability to transfer your knowledge and skills to programming in any domain, with any language.

Technology Requirements Participation in this course will require the basic technology for all online classes at Columbia College:    

A computer with reliable Internet access, a web browser, Acrobat Reader, Microsoft Office or another word processor such as Open Office.

You can find more details about standard technical requirements for our courses on our site. We will be using the Microsoft Visual Studio Compiler for this class, which is available at http://www.microsoft.com/express/vc/. You’ll want the version that allows development of Win32

Columbia College Online Campus

CISS 242

Page |2

console applications, which is Express 2015 for Windows Desktop. (Older versions of Visual Studio such as 2012 and 2013 will also work fine if you already have one of them installed.) Follow the online help to install the compiler. It may require you to install the .NET framework, which is also free. Alternatively, you can download and install Visual Studio Community 2015, Choose the Custom installation, uncheck “Windows and Web Development”, check “Visual C++”. Once installed, when you start it up, in the “Start with a familiar environment” dropdown pick ”Visual C++” and then when it opens a New Project, choose the Win32 Console Application template.

Course Objectives   

To extend the language constructs and programming techniques available to the student To use arrays, both one- and multi-dimensional To work with strings and pointers, write simple recursive functions, and understand encapsulation using the object-oriented paradigm

Measurable Learning Outcomes                 

Declare and initialize one- and two-dimensional arrays. Pass arrays as parameters to function. Understand and implement a class. Understand, use and define constructors with or without initializer list. Understand and create destructors. Understand and explain the difference between public and private members. Understand, use and write get and set methods. Understand, use and write static members. Understand, use and write constant methods. Understand the use of a pointer in a method. Understand and provide class support for constant objects. Understand and write friend functions. Understand and write friend classes. Understand and write overloaded operators. Show how to overload the stream insertion operator to print a Name object. Write a destructor for the class. Given objects N1 and N2 of the Name class, write one or more class methods that would support the following syntax: if (N1 < N2 ) ? if (N1 < “Marry Sue” ) ? if (“Marry Sue” < N1) ?

Columbia College Online Campus

CISS 242

Page |3

Grading Grading Scale GRADE

POINTS

Grade Weights PERCENT

ASSIGNMENT

POINTS

PERCENT

75

9.5%

A

720-800

90-100

Discussion

B

640-719

80-89

350

43.5%

C

560-639

70-79

Programming Assignments

D

480-559

60-69

Course Project

35

4.5%

F

0-479

0-59

Quizzes

140

17.5%

Final Exam

200

25%

Total

800

100%

Schedule of Due Dates Week

1

2

3

4

5

6

7

Assignment

Points

Due Date

Week 1 Programming Assignment 1

25

Sunday

Week 1 Programming Assignment 2

25

Sunday

Discussion 1

10

Wednesday/Sunday

Quiz 1

20

Sunday

Week 2 Programming Assignment 1

25

Sunday

Week 2 Programming Assignment 2

25

Sunday

Discussion 2

10

Wednesday/Sunday

Quiz 2

20

Sunday

All Proctor information due

0

Sunday

Week 3 Programming Assignment 1

25

Sunday

Week 3 Programming Assignment 2

25

Sunday

Discussion 3

10

Wednesday/Sunday

Quiz 3

20

Sunday

Week 4 Programming Assignment 1

25

Sunday

Week 4 Programming Assignment 2

25

Sunday

Discussion 4

10

Wednesday/Sunday

Quiz 4

20

Sunday

Week 5 Programming Assignment 1

25

Sunday

Week 5 Programming Assignment 2

25

Sunday

Discussion 5

10

Wednesday/Sunday

Quiz 5

20

Sunday

Week 6 Programming Assignment 1

25

Sunday

Week 6 Programming Assignment 2

25

Sunday

Discussion 6

10

Wednesday/Sunday

Quiz 6

20

Sunday

Week 7 Programming Assignment 1

25

Sunday

Week 7 Programming Assignment 2

25

Sunday

Columbia College Online Campus

8

CISS 242

Page |4

Discussion 7

10

Wednesday/Sunday

Quiz 7

20

Sunday

Discussion 8

5

Saturday

Course Project

35

Saturday

Final Exam (Proctored)

200

Saturday

Total

800

Assignment Overview Readings: Be sure you can answer all of the Checkpoint questions as well as complete the Review Questions and Exercises at the end of each chapter. Discussion: Each week you will discuss programming concepts with your classmates. The discussion board will be used primarily for you to pose and answer questions about your programming assignments. Regular participation in these forums will advance your understanding (as well as improve your grade). The first 7 weeks each student is required to post two times. First the student will post to the discussion topic that is provided each week by the instructor. The second post for every student is a response to a post by another student. NOTE the first posting by the student must be posted by Wednesday of each week (start of discussion); if posted after Wednesday it will be subject to the late policy for this course. The response to another student’s posting is due by Sunday. Your responses to others’ posts should also be well developed, fully explaining your response to the classmates’ posts. Make responses that add to the conversation and take it further; simply posting “I agree” or “good job” does not help develop ideas. For Week 8 there is only one post required; this post should be in response to the topic provided by the instructor. Quizzes: There will be a brief 20-point quiz each week to test your understanding of programming concepts. Programming Assignments: Each week you will write two programs; the requirements for these assignments are provided below in the Course Schedule section of this syllabus. We will be using the Microsoft Compiler for this class, available at http://www.microsoft.com/express/vc/. The Microsoft compilers are the more accepted tools in the field. Follow the online help to install the compiler. It may require you to install the .NET framework, which is also free. Complete your assignments in the Microsoft compiler; then submit the program to the course Dropbox. Please include comments describing the programming sequence (see rubric below). Course Project: This assignment can be started anytime during Week 7 and must be submitted by the end of Week 8. This project will use many the topics covered during this course. Final Exam: You will have one (1) proctored exam worth 200 points. You must arrange an acceptable proctor and submit the Proctor Information Form to the Proctor Dropbox by the end of Week 2. See the Proctor Policy in the Course Policies section below for more information.

Course Schedule Week 1 – Searching and Sorting Arrays Readings  Chapter 8. Be sure you can review all of the Checkpoint questions.  Read the "Source Code Format and Comments" document available from the course website. Programming Assignments: The following assignments must be completed with all source code files, including .cpp and .h (.h files only needed when working with classes), submitted to the correct

Columbia College Online Campus

CISS 242

Page |5

dropbox by the end of the week. 

Assignment 1 Lottery Winners. Write a program that determines if the user is a winner in the lottery game. A lottery ticket buyer purchases 10 tickets a week, always playing the same 10 5-digit “lucky” combinations. The program will initialize an array with these numbers and then lets the player enter this week’s winning 5-digit number. The program should perform both a linear search and a binary search through the list of player’s numbers and report whether or not one of the tickets is a winner this week. Here are the numbers, and the array must be created with the values in this order: 13579, 62483, 26791, 77777, 26792, 79422, 33445, 85647, 55555, 93121. NOTE: The numbers are not in order, they must start this way for the linear search and then sorted (using a function) for the binary search.



Assignment 2 This program will be a modification of the program done in CISS 241, Week 7 Programming Assignment 1. That was the Rainfall Statistics program. For those who did not take 241, that program description is below. Modify the Rainfall Statistics program so that it displays a list of months, sorted in the order of rainfall from highest to lowest. Original Assignment: Write a program that lets the user enter the total rainfall for each of 12 months into an array of doubles. The program should use two 12 element arrays. One array will hold strings, the names of the 12 months. This array will be initialized when the array is created using an initialization list (could also be created as a array of constants). The second array will hold doubles which will be the total rainfall for each month. The program will prompt the user for the rainfall for each month (using both arrays) and store the value entered into the array with the rainfall totals, the other is used to display which month the program is asking for the rainfall total. The program should display the following once the data is all entered: o

The total rainfall for the year

o

The average monthly rainfall

o

The month with the highest amount of rainfall (must display the month as a string)

o

The month with the lowest amount of rainfall (must display the month as a string)

The program must have the following functions: 

double getTotal(double [ ], int);



double getAverage(double [ ], int);



double getLowest(double [ ], int, int&); //returns the lowest value, provides the index of the lowest value in the last parameter.



double getHighest(double [ ], int, int&); //returns the highest value, provides the index of the highest value in the last parameter.

Discussion 1: A big part of programming is understanding the problem you are trying to solve. Lots of times the customer (external or internal to your company) may tell you what they want but at a very high level. Or they may tell you what problem they have. Either part of a programmer’s job is to figure out what they are looking for; sometimes you tell them what they want. It all comes down to software requirements—talk about different ways to determine requirements or the importance of requirements. Pose your questions about programming issues encountered this week and answer those of your

Columbia College Online Campus

CISS 242

Page |6

classmates. Quiz 1: Take the weekly quiz in the course environment.

Week 2 – Pointers Readings: Chapter 9. Be sure you can review all of the Checkpoint questions as well as complete the Review Questions and Exercises. Programming Assignments: The following assignments must be completed with all source code files, including .cpp and .h (.h files only needed when working with classes), submitted to the correct dropbox by the end of the week. 

Assignment 1 Write a program that dynamically allocates an array large enough to hold a user-defined number of test scores. Once all the scores are entered by the user, the array must be passed to a function that sorts them in ascending order. It must use another function that calculates the average score. The program should display the sorted list of scores and average with appropriate headings. The program must use pointer notation instead of array notation. Validation: Do not accept negative numbers for test scores; keep prompting the user for a new grade. Do not accept negative numbers for the number of scores the user wants to enter. The output should look like this: Score 67.40 67.80 77.60 99.60 Average Score: 78.10 o



Program must have the following functions 

void getGrades(double* score, int size)



void displayGrades(double* score, int size, double avg)



void sort(double* score, int size)



double average(double* score, int numScores)

Assignment 2 Array Expander. The program should have an array of integers. It will have a function that has two parameters, the integer array and the array’s size. This function will create a new array that is twice the size of the arguments array. The function should copy the contents of the argument array to the new array, and initialize the unused elements of the second array with 0. The function must return a pointer to the new array. The program will then display the contents of the new array. o

Program must have the following functions 

int* expandArray(int[ ], int)



void showArray(int [ ], int)

Discussion 2: Pointers to a lot of people seem to be an odd thing, why would you use them? Well I want you to answer that question, why do we need pointers? Where would they be used? What do they provide to programming? In other words provide information to support the use of pointers.

Columbia College Online Campus

CISS 242

Page |7

Pose your questions about programming issues encountered this week and answer those of your classmates. Quiz 2: Take the weekly quiz in the course environment Submit your proctor information by the end of this week.

Week 3 – Characters, Strings, and the String Class Readings: Chapter 10. Be sure you can review all of the Checkpoint questions as well as complete the Review Questions and Exercises. Programming Assignments: The following assignments must be completed with all source code files, including .cpp and .h (.h files only needed when working with classes), submitted to the correct dropbox by the end of the week. 

Assignment 1 Password Verifier. Here you will be creating part of a bigger program. Your task is to develop code that will verify the password the user is selecting meets the requirements of a password for the system. Create a program which will verify that a password meets the following criteria: o

The password should be at least 6 characters long.

o

The password should contain at least one uppercase and at least one lowercase letter.

o

The password should have at least one digit.

If the password does not meet these requirements, the program should display a message telling the user why the password is invalid, specifically. It should also continue to loop until the user enters a valid password. o

Program must have the following functions (may also use string instead of a char array). 



bool validatePassword(char [ ]) – True if valid password, false otherwise.

Assignment 2 Phone Number List. This program should have an array of at least 10 string objects. The array will hold people’s names and phone numbers. The following list is an example of the data in the array. "Renee Javens, 678-1223", "Joe Looney, 586-0097", "Geri Palmer, 223-8787", "Lynn Presnell, 887-1212", "Bill Wolfe, 223-8878", "Sam Wiggins, 486-0998", "Bob Kain, 586-8712", "Tim Haynes, 586-7676", "John Johnson, 223-9037", "Jean James, 678-4939", "Ron Palmer, 486-2783" The program should ask the user to enter a name or partial name to search for in the array. Any entries in the array that match the string entered should be displayed. For example, if the user enters “Palmer” the program should display the following names from the list:

Columbia College Online Campus

CISS 242

Page |8

Geri Palmer, 223-8787 Ron Palmer, 486-2783 NOTE: if the user enters “Pal” it should produce the same output. Discussion 3: Testing of software is also a big part of programming. You will find programmers who do not like testing. But testing is a very important part of the software development process. How else would you know if what you wrote is correct? Some students should talk about White box testing, others about Black box testing. Pose your questions about programming issues encountered this week and answer those of your classmates. Quiz 3: Take the weekly quiz in the course environment.

Week 4 – Structured Data Readings: Chapter 11. Be sure you can review all of the Checkpoint questions as well as complete the Review Questions and Exercises. Programming Assignments: The following assignments must be completed with all source code files, including .cpp and .h (.h files only needed when working with classes), submitted to the correct dropbox by the end of the week. 

Assignment 1 Corporate Sales Data. This program will have a structure that holds data about each division of a corporation. This structure will have a string object that holds the division’s name, 4 doubles that hold the sales totals for each quarter. The structure will also have two other doubles, one for the annual sales and the other will hold the average of the quarter sales. The program should use four variables (instances) of this structure. Each variable should represent one of the following corporate divisions: East, West, North, South. The user should be asked for the four quarters’ sales figures for each division. Each division’s total and average sales should be calculated and stored in the appropriate member of each structure variable. The output of the program will be all the figures in the structures. Validation: Do not accept negative numbers for any sales figures. o

Program must have the following functions  void DisplayCorpInformation(const Division& east, const Division& west, const Division& north, const Division& south);  void FindTotalAndAverageSales(Division& div);  void GetDivisionSales(Division& div);

o

The input should look like this screen shot.

o

The output should look like this screen shot.

Columbia College Online Campus



CISS 242

Page |9

Assignment 2 Soccer Scores. Write a program that stores the following data about a soccer player in a structure: Player’s name, Player’s number, Points scored by Player. The program should keep an array of 12 of these structures. Each element is for a different player on a team. The program should ask the user to enter information for each player. It should then display a table that lists each player’s number, name and points scored. The program should also calculate and display the total points earned by the team. The program should also determine which player earned the most points on the team and display that player’s information. Validation: Do not accept negative values for player’s number or points scored. o

o

Program must have the following functions  void getPlayerInfo(Player &);  void showInfo(Player);  int getTotalPoints(Player [], int);  void showHighest(Player [], int); The input and output should look like the following screen shot except it should work for 12 players.

Discussion 4: Provide input about Unit Testing and Integration Testing. Pose your questions about programming issues encountered this week and answer those of your classmates. Quiz 4: Take the weekly quiz in the course environment.

Columbia College Online Campus

CISS 242

P a g e | 10

Week 5 – Advanced File Operations Readings: Chapter 12. Be sure you can review all of the Checkpoint questions as well as complete the Review Questions and Exercises. Programming Assignments: The following assignments must be completed with all source code files, including .cpp and .h (.h files only needed when working with classes), submitted to the correct dropbox by the end of the week. 

Assignment 1 File Display Program. Write a program that asks the user for the name of a file. The program should display the content of the file on the screen. If the file’s contents won’t fit on a single screen, the program should display 24 lines of the output at a time, and then pause. Each time the program pauses, it should wait for the user to strike a key before the next 24 lines are displayed.



Assignment 2 Punch Line. Write a program that reads and prints a joke and its punch line from two different files (please keep it clean). The first file contains a joke, but not its punch line. The second file has the punch line as its last line, preceded by “garbage text” (does not matter what it is). NOTE: the last sentence (punch line) will have a newline character before it. The program is to search for the start of the last sentence; it should NOT move backward from the file a fixed number of characters. It should work for any punch line file. The main function of your program should open the two files and then call two functions, passing each one the file it needs. The first function should read and display each line in the file it is passed (the joke file). The second function should display only the last line of the file it is passed (the punch line file). IT should find this line by seeking to the end of the file and then backing up to the beginning of the last line. Data to test your program can be found in the joke.txt and punchline.text files provided at the textbook web site. o

Program must have the following functions  void displayAllLines(ifstream &infile); //Display joke  void displayLastLine(ifstream &infile); //Display punchline

Discussion 5: Provide input about System testing and System integration testing; these are two different things. Pose your questions about programming issues encountered this week and answer those of your classmates. Quiz 5: Take the weekly quiz in the course environment

Week 6 – Introduction to Classes Readings: Chapter 13. Be sure you can review all of the Checkpoint questions as well as complete the Review Questions and Exercises. Programming Assignments: The following assignments must be completed with all source code files, including .cpp and .h (.h files only needed when working with classes), submitted to the correct dropbox by the end of the week. 

Assignment 1 Employee Class. Write a class named Employee, with the class declaration in a file called Employee.h and the implementation in a file called Employee.cpp. The class should have the following data members: o

name – A string that holds the employee’s name

Columbia College Online Campus

CISS 242

P a g e | 11

o

idNumber – An int variable that holds the employee’s ID number

o

department – a string that holds the name of the department where the employee works

o

position – A string that holds the employee’s job status

The class must have the following constructors: o

A constructor that accepts the following values as arguments and assigns them to the appropriate member variables: employee’s name, employee’s ID number, department and position.

o

A constructor that accepts the following values as arguments and assigns them to the appropriate member variable: employee’s name, employee’s ID number. The department and position fields should be assigned an empty string (“ “).

o

A default constructor that assigns empty string (“”) to the name, department and position member variables and 0 to the idNumber member variable.

Write the appropriate mutator functions that store values in these member variables and accessor functions that return the values in these member variables. Once you have written the class, write a separate program that creates 3 instances of the Employee class. Each instance of the class should use a different constructor than the other 2 objects (so all three constructors must be used). Main should use a function called displayEmployee that has one parameter which is a pointer to a constant Employee object. Main will call the function 3 times to display the information for each of the 3 instances of the Employee class. void displayEmployee(Employee* const e); The output of the program must be in the form of a table



Assignment 2 Circle Class. Write a class name Circle, with the class declaration in a file called Circle.h and the implementation in a file called Circle.cpp. The class will have two data members, a double that holds the radius of the circle and a double called pi which will be set to the value, 3.14159 (data member cannot be set in the class declaration, pi should not be set via a parameter but set in the constructor). The class must provide the following member functions o

Default Constructor – that sets the radius to 0.0

o

Constructor – that accepts the radius of the circle as an argument

o

setRadius – a mutator function for the radius variable

o

getRadius – an accessor function for the radius variable

o

getArea – calculates and returns (as double) the area of the circle using the formula 

area = pi * radius * radius

Columbia College Online Campus o

P a g e | 12

getDiameter – calculates and returns (as double) the diameter of the circle using the formula 

o

CISS 242

diameter = radius * 2

getCircumference – calculates and returns (as double) the circumference of the circle using the formula 

circumference = 2 * pi * radius

Write a program that demonstrates the Circle class by asking the user for the circle’s radius and creating a Circle object and then reporting the circle’s area, diameter and circumference. Two objects need to be created each using one of the two constructors (showing that both work along with the mutators and accessors). Discussion 6: Provide input about Regression testing and Acceptance testing. Pose your questions about programming issues encountered this week and answer those of your classmates. Quiz 6: Take the weekly quiz in the course environment. Course Evaluations: Please evaluate the course. You will have an opportunity to evaluate the course near the end of the session. A link will be sent to your CougarMail that will allow you to access the evaluation.

Week 7 – Classes (Cont’d) Readings: Chapter 13. Be sure you can review all of the Checkpoint questions as well as complete the Review Questions and Exercises. Programming Assignments: The following assignments must be completed with all source code files, including .cpp and .h (.h files only needed when working with classes), submitted to the correct dropbox by the end of the week. 

Assignment 1 Payroll. Write a class name Payroll, with the class declaration in a file called Payroll.h and the implementation in a file called Payroll.cpp. The class will have data members for an employee’s hourly pay rate, number of hours worked and calculate the total pay for the week. All of the data members will be doubles. The class only needs one constructor which can be a default constructor that sets all data members to zero. Then add the mutators and accessor for the class. The program will have an array of 7 Payroll objects. The program will prompt the user for number of hours each employee has worked and will then display the amount of gross pay each has earned. Before asking the user for the hours, the program should set the pay rate for each employee without user input. Validation: Do not accept values greater than 60 for the number of hours worked.



Assignment 2 Cash Register. This program will use two classes; one of the classes is provided in the assignment description for week 7 in the course site. Write a class name CashRegister, with the class declaration in a file called CashRegister.h and the implementation in a file called CashRegister.cpp. This class will interact with the InventoryItem class that has been provided. The program should display a list of items that are available to purchase.

Columbia College Online Campus

CISS 242

P a g e | 13

The program will ask the user for the item and quantity being purchased. It will then get the cost of the item from the InventoryItem object. It will add 30% profit to the cost of the item to get the item’s unit price. It will then multiply the unit price times the quantity being purchased to get the purchase subtotal. The program will then compute a 6% sales tax on the subtotal to get the purchase total. It should then display the purchase subtotal, tax and total on the screen. The program will then subtract the quantity being purchased from the onHand variable of the InventoryItem class object. InventoryItem will need to be modified to handle this.

Validation: Do not accept a negative value for the quantity of items being purchased. Discussion 7: Object Oriented Programming or OOP. We now know about structures and classes. Both of these are known as objects once an instance of them is created. But what makes a language object oriented? Not all languages are object oriented. Pose your questions about programming issues encountered this week and answer those of your classmates. Quiz 7: Take the weekly quiz in the course environment. Course Project: This project can be started in Week 7 but is due by the end of Week 8. See the course project document in the course Content area.

Week 8 – Rest, Recover, and Review This week will be reserved for catching up on any assignments, discussing any topics or issues that have arisen, and preparing for the final. The final may be taken any time this week, but MUST be taken by Saturday. Discussion 8: So what is it about a class that helps make C++ an object oriented language? Pose your questions about programming issues encountered this week and answer those of your classmates. Course Project: This project can be started in Week 7 but is due by the end of Week 8. See the course project document in the course Content area. Final Exam: You will have 2 hours for the exam, which must be taken with a proctor. See the Proctor

Columbia College Online Campus

CISS 242

P a g e | 14

Policy in the Course Policies section below for information about finding an appropriate proctor.

Course Policies Student Conduct All Columbia College students, whether enrolled in a land-based or online course, are responsible for behaving in a manner consistent with Columbia College's Student Conduct Code and Acceptable Use Policy. Students violating these policies will be referred to the office of Student Affairs and/or the office of Academic Affairs for possible disciplinary action. The Student Code of Conduct and the Computer Use Policy for students can be found in the Columbia College Student Handbook. The Handbook is available online; you can also obtain a copy by calling the Student Affairs office (Campus Life) at 573-875-7400. The teacher maintains the right to manage a positive learning environment, and all students must adhere to the conventions of online etiquette.

Plagiarism Your grade will be based in large part on the originality of your ideas and your written presentation of these ideas. Presenting the words, ideas, or expression of another in any form as your own is plagiarism. Students who fail to properly give credit for information contained in their written work (papers, journals, exams, etc.) are violating the intellectual property rights of the original author. For proper citation of the original authors, you should reference the appropriate publication manual for your degree program or course (APA, MLA, etc.). Violations are taken seriously in higher education and may result in a failing grade on the assignment, a grade of "F" for the course, or dismissal from the College. Collaboration conducted between students without prior permission from the instructor is considered plagiarism and will be treated as such. Spouses and roommates taking the same course should be particularly careful. All required papers may be submitted for textual similarity review to Turnitin.com for the detection of plagiarism. All submitted papers may be included in the Turnitin.com reference database for the purpose of detecting plagiarism. This service is subject to the Terms and Conditions of Use posted on the Turnitin.com site.

Non-Discrimination There will be no discrimination on the basis of sex, race, color, national origin, sexual orientation, religion, ideology, political affiliation, veteran status, age, physical handicap, or marital status.

Disability Services Students with documented disabilities who may need academic services for this course are required to register with the Coordinator for Disability Services at (573) 875-7626. Until the student has been cleared through the disability services office, accommodations do not have to be granted. If you are a student who has a documented disability, it is important for you to read the entire syllabus before enrolling in the course. The structure or the content of the course may make an accommodation not feasible.

Online Participation You are expected to read the assigned texts and participate in the discussions and other course activities each week. Assignments should be posted by the due dates stated on the grading schedule in your syllabus. If an emergency arises that prevents you from participating in class, please let your instructor know as soon as possible.

Columbia College Online Campus

CISS 242

P a g e | 15

Attendance Policy Attendance for a week will be counted as having submitted a course assignment for which points have been earned during that week of the session or if the proctoring information has been submitted or the plagiarism quiz taken if there is no other assignment due that week. A class week is defined as the period of time between Monday and Sunday (except for Week 8, when the week and the course will end on Saturday at midnight). The course and system deadlines are all based on the Central Time Zone.

Cougar E-mail All students are provided a CougarMail account when they enroll in classes at Columbia College. You are responsible for monitoring e-mail from that account for important messages from the College and from your instructor. You may forward your Cougar e-mail account to another account; however, the College cannot be held responsible for breaches in security or service interruptions with other e-mail providers. Students should use e-mail for private messages to the instructor and other students. The class discussions are for public messages so the class members can each see what others have to say about any given topic and respond.

Late Assignment Policy An online class requires regular participation and a commitment to your instructor and your classmates to regularly engage in the reading, discussion and writing assignments. Although most of the online communication for this course is asynchronous, you must be able to commit to the schedule of work for the class for the next eight weeks. You must keep up with the schedule of reading and writing to successfully complete the class. Late assignments will be accepted for up to one week past the due date for credit on a sliding scale. For instance, an assignment that is 3.5 days late will receive 50% credit; an assignment that is 6 days late will receive 14.3% credit.

Course Evaluation You will have an opportunity to evaluate the course near the end of the session. A link will be sent to your CougarMail that will allow you to access the evaluation. Be assured that the evaluations are anonymous and that your instructor will not be able to see them until after final grades are submitted.

Proctor Policy Students taking courses that require proctored exams must submit their completed proctor request forms to their instructors by the end of the second week of the session. Proctors located at Columbia College campuses are automatically approved. The use of ProctorU services is also automatically approved. The instructor of each course will consider any other choice of proctor for approval or denial. Additional proctor choices the instructor will consider include: public librarians, high school or college instructors, high school or college counseling services, commanding officers, education service officers, and other proctoring services. Personal friends, family members, athletic coaches and direct supervisors are not acceptable.

Additional Resources Orientation for New Students This course is offered online, using course management software provided by Desire2Learn and Columbia College. The Student Manual provides details about taking an online course at Columbia

Columbia College Online Campus

CISS 242

P a g e | 16

College. You may also want to visit the course demonstration to view a sample course before this one opens.

Technical Support If you have problems accessing the course or posting your assignments, contact your instructor, the Columbia College Helpdesk, or the D2L Helpdesk for assistance. Contact information is also available within the online course environment. [email protected]

[email protected]

800-231-2391 ex. 4357

877-325-7778

Online Tutoring Smarthinking is a free online tutoring service available to all Columbia College students. Smarthinking provides real-time online tutoring and homework help for Math, English, and Writing. Smarthinking also provides access to live tutorials in writing and math, as well as a full range of study resources, including writing manuals, sample problems, and study skills manuals. You can access the service from wherever you have a connection to the Internet. I encourage you to take advantage of this free service provided by the college. Access Smarthinking through CougarTrack under Students->Academics->Academic Resources.

Grading Criteria Programming Assignments Criteria

Points

Includes Required Program Constructs

9

Program Compiles

6

Yields Correct Answers

5

Includes Program Comments

3

Uses Appropriate Program Structure Total

2 25

Discussions Criteria Responds to instructor-posted discussion question or prompt Responds to another student’s post Total

Points 6 4 10