CISS 241: Programming I

Syllabus Contents

Course Description

This course provides an introduction to program design and development using C++. A disciplined approach to problem solving and algorithm development will be stressed using top-down design. Topics include syntax and semantics, input/output, selection, iterative constructs functions, data types and recursion.

Prerequisite: CISS 170 and MATH 150

Proctored Exams: Final

Textbooks

Required

Gaddis, Tony. Starting Out with C++: From Control Structures Through Objects.. 8th. Addison Wesley, 2015.

ISBN-978-0-13-376939-5

Note: This text comes with an access code to supplementary resources. These resources are optional, and are not required for course completion.

MBS Information

Textbooks for the course may be ordered from MBS Direct. You can order

Course Overview

The foremost objective of this course is to learn the fundamentals of computer programming. 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.

In this course will first look at how to decompose a problem into its logical steps to perform the task that is being requested. Starting with simple problems to decompose, you will be shown how to take those steps, in English statement, convert them to the C++ syntax each steps or statements. The process of decomposing the problem is the design step of programming. Towards the end of the course we will talk about functions which allow the programmer to start creating programs that are more module, which starts us down the path of creating programs that are object oriented.

As the course moves along you will learn about the different parts of the Microsoft Studio environment and how to use the debugger to help find the problems/errors with your program. These skills will be specific to the Microsoft environment but the concepts will not be. You should be able to apply the concepts to any other programming environment for any language.

Technology Requirements

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

Course Learning Outcomes

Understand and use branching statements, loops, functions, arrays, and references.

Write procedural C++ programs to solve algorithmic problems.

UG

Grading

Grading Scale

Grade

Points

Percent

A

720-800

90-100%

B

640-719

80-89%

C

560-639

70-79%

D

480-559

60-69%

F

0-479

0-59%

Grade Weights

Assignment Category

Points

Percent

Discussion

75

9%

Programming Assignments

350

44%

Course Project

35

4%

Quizzes

140

18%

Final Exam

200

25%

Total

800

100%

Schedule of Due Dates

Week 1

Assignment

Points

Due

Discussion 1

10

Wednesday/Sunday

Week 1 Programming Assignment 1

25

Sunday

Week 1 Programming Assignment 2

25

Quiz 1

20

Week 2

Assignment

Points

Due

Discussion 2

10

Wednesday/Sunday

Week 2 Programming Assignment 1

25

Sunday

Week 2 Programming Assignment 2

25

Quiz 2

20

Proctor Information

N/A

Week 3

Assignment

Points

Due

Discussion 3

10

Wednesday/Sunday

Week 3 Programming Assignment 1

25

Sunday

Week 3 Programming Assignment 2

25

Quiz 3

20

Week 4

Assignment

Points

Due

Discussion 4

10

Wednesday/Sunday

Week 4 Programming Assignment 1

25

Sunday

Week 4 Programming Assignment 2

25

Quiz 4

20

Week 5

Assignment

Points

Due

Discussion 5

10

Wednesday/Sunday

Week 5 Programming Assignment 1

25

Sunday

Week 5 Programming Assignment 2

25

Quiz 5

20

Week 6

Assignment

Points

Due

Discussion 6

10

Wednesday/Sunday

Week 6 Programming Assignment 1

25

Sunday

Week 6 Programming Assignment 2

25

Quiz 6

20

Week 7

Assignment

Points

Due

Discussion 7

10

Wednesday/Sunday

Week 7 Programming Assignment 1

25

Sunday

Week 7 Programming Assignment 2

25

Quiz 7

20

Week 8

Assignment

Points

Due

Discussion 8

5

Wednesday/Saturday

Course Project

35

Saturday

Final Exam

200

Total Points: 800

Assignment Overview

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: For 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 students posting is due by Sunday. Your responses to others’ posts should 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. Note: you only need to submit the source code files; these files have an extension of cpp. Please include comments describing the programming sequence (see rubric in the course content area).

Course Project

This assignment can be started anytime during Week 7 and must be submitted by the end of Week 8 (Saturday). This project will use many of 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 Outline

Click on each week to view details about the activities scheduled for that week.

Read the "Source Code Format and Comments" document available from the course website.

Discussion 1

This week’s discussion is on the history of C++. Why was the language developed? How does C++ build upon C? Why was C developed? Comment on the past, current, and potential future use of the language in academia and industry. Discuss the pros and cons of C++ compared to other languages. Remember, 2 posts are required: an original post to the above topic and then a response to another student’s posting.

Pose your questions about programming issues encountered this week and answer those of your classmates.

Programming Assignments

The following assignments must be completed with a text editor like Word or Notepad (must be a standard editor). Diagrams can be also done in an editor like Word or by hand but must be easy to read (submit a picture or scan of it). All documents must be submitted to the correct Dropbox by the end of the week.

Week 1 Programming Assignment 1

The following pseudocode algorithm has an error. The program is supposed to ask the user for the length and width of the rectangular room, and display the room’s area. The program must multiply the width by the length in order to determine the area.

For the corrected pseudocode of the above program create a flow chart for the program. Submit the corrected pseudocode and the flowchart.

Week 1 Programming Assignment 2

Write the pseudocode and create a flowchart for the following two problems.

For a program that calculates the total of a retail sale. The program should ask the user for the retail price of the item being purchased and the sales tax rate. The program should calculate and display the sales tax for the purchase and the total of the sale.

For a program that calculates the current balance in a savings account. The program must ask the user for the starting balance, total dollar amount of deposits made, the total dollar amount of withdrawals made, and the monthly interest rate. The program should calculate the new balance and display it.

Read Chapter 2. Be sure you can answer all of the Checkpoint questions as well as complete the Review Questions and Exercises.

Discussion 2

This week please examine different design tools such as hierarchy charts, flowcharts, and pseudocode. Comment on the usefulness of each of these (or other tools). Do not feel constrained to talking about all of these tools, or only these tools. Remember, 2 posts are required: an original post to the above topic and then a response to another student’s posting.

Pose your questions about programming issues encountered this week and answer those of your classmates.

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.

Week 2 Programming Assignment 1

Miles per gallon of Gas – A car with a 16-gallon gas tank averages 345 miles per tankful when driven in town and 460 miles per tankful when driven on the highway. Write a program that calculates and displays the miles per gallon for one tank of gas when driven in town and when driven on the highway. The MPG should have a data type of a double.

MPG = Total number of Miles / Number of Gallons

Week 2 Programming Assignment 2

Stock Market – Cathy bought 600 shares of stock at a price of $21.77 per share. She must pay the stock broker a 2 percent commission for the transaction. Write a program that calculates and displays the following:

The amount paid for the stock alone (without the commission)

The amount of the commission

The total amount paid (for the stock plus the commission)

What is the minimal price for the stocks she would need to make a profit if she were to sell the stocks? (Assume she will not pay a commission when she sells the stock.)

Quiz 2

Take the weekly quiz in the course environment.

Proctor InformationSubmit your proctor form to the appropriate Dropbox folder by the end of the week. Remember to “Save” the form before placing it in Dropbox. See the Content area for more information.

Read Chapter 3. Be sure you can answer all of the Checkpoint questions as well as complete the Review Questions and Exercises.

Discussion 3

Discuss the pros and cons of following formatting and commenting standards. Why should you format your code and comment it? Remember, 2 posts are required: an original post to the above topic and then a response to another student’s posting.

Pose your questions about programming issues encountered this week and answer those of your classmates.

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.

Week 3 Programming Assignment 1

Compounded Interest Earned – Assume no additional deposits are made other than the original investment. The balance in an account after one year may be calculated as:

New Balance = Principal * (1 + rate/T)T

Principal is the opening balance in the account. Rate is the interest rate, and T is the number of times the interest is compounded during a year (T is 4 if the interest is compounded quarterly). Write a program that prompts the user for the principal, the interest rate, and the number of times the interest is compounded. The output must be formatted in the following format.

Pizza Orders – Joe’s Pizza Palace needs a program to calculate the number of slices a pizza of any size can be divided into. The program should also report the number of pizzas someone should order for a party. Assume each person at the party will eat 3 slices each. The program should prompt the user for the diameter of the pizzas they wish to order and the number of people who will be at the party. The program should then calculate and display the number of slices per pizza and the number of pizzas needed for the party.

A slice must have an area of 14.125 inches

Number of slices per pizza is the area of the pizza divided by the area of a slice

Area of a pizza is calculated with Area = PI * r2 where PI = 3.14159 and r is the radius of the pizza

The number of slices should be fixed point and rounded to one decimal place

Read Chapter 4. Be sure you can answer all of the Checkpoint questions as well as complete the Review Questions and Exercises.

Discussion 4

Discuss what role formatting and commenting code play in the maintenance of software. Software maintenance is when a program is released but goes under changes over the life of the program, which is how new versions of software are released. Remember, 2 posts are required: an original post to the above topic and then a response to another student’s posting.

Pose your questions about programming issues encountered this week and answer those of your classmates.

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.

Week 4 Programming Assignment 1

Geometry Calculator – Write a program that displays the following menu with the following format:

Geometry Calculator

Calculate the Area of a Circle

Calculate the Area of a Rectangle

Calculate the Area of a Triangle

Calculate the Area of a Trapezoid

Calculate the Area of a Sphere

Exit

Enter your Choice (1-6):

Using a Switch statement for the user’s menu choice, calculate the area for the shape selected. For a circle, the program must prompt the user radius of the circle. The program will calculate the area and display the area. For the rectangle, the program must prompt the user for the length and width of the rectangle. Calculate the area of the rectangle and display it. For the triangle, the program must prompt the user for the length of the triangle’s base and its height. Calculate the area of the triangle and display it. If the shape selected is trapezoid, the program must prompt the user for the height and the two base lengths. If sphere is selected, the program must prompt the user for the radius.

Make PI a named constant

Circle area = PI* r2

Rectangle area = length * width

Triangle area = base * height *0.5

Trapezoid area = height/2 (b1 + b2)

Sphere area = 4*PI*r2

If the user enters an invalid menu option, display a message telling the user what the valid choices are and exit the program. Do not allow the user to enter a negative number for any of the values used to calculate the areas.

Week 4 Programming Assignment 2

Long Distance Calls – Write a program that prompts the user for the starting time and the number of minutes of the call and display the charges. The charges are based on the start time of the call and use the correct rate for the time range it falls into (see table below). The start time will be entered as a floating point number (decimal) in the form HH.MM. For example, 07:00 would be entered as 07.00 and 16:28 will be entered as 16.28.

Must not accept times that are greater than 23.59 (note that 6.69 is less than 23.59 but is an invalid time).

Must not accept time whose last two digits are greater than 59.

HINT – the following expression will give you its fractional part
num – static_cast<int>(num) (where num is the start time entered by the user).

Read Chapter 5. Be sure you can answer all of the Checkpoint questions as well as complete the Review Questions and Exercises.

Discussion 5

Discuss some of the steps that should be taken for the creation of every program. You are presented with a problem from the book—what are the steps you should take before writing one line of code? Suggestions in how to start coding or how to code as you go along? Remember, 2 posts are required: an original post to the above topic and then a response to another student’s posting.

Pose your questions about programming issues encountered this week and answer those of your classmates.

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.

Week 5 Programming Assignment 1

Write a program that generates a random number between 1 and 100 and asks the user to guess what the number is. If the user’s guess is higher than the random number, the program should display “Too high, try again.” If the user’s guess is lower than the random number, the program should display “Too low, try again.” The program must use a loop that repeats until the user correctly guesses the random number or has made 10 guesses. The program needs to keep track of the number of guesses the user makes. At the end the program will display one of the messages in the table below based on the number of guesses the user took. The program must validate the user’s guess by making sure the value entered is between 1 and 100. If the value is not between 1 and 100, the user should be told to make another guess. The invalid input should not count as one of the 10 guesses the user is allowed.

Number of Guesses by the User

Output Message

Less than 5 guesses

"Either you know the secret or you got lucky!"

5-7 guesses

"You're pretty good at this!"

8-10 guesses

"You'll do better next time."

If guess 10 is not correct

"Sorry - You have taken too many guesses."

Week 5 Programming Assignment 2

Working with files – You will need the text file Random.txt that can be found in the Content area of the course under Week 5. The file contains a list of random numbers. Write a program that opens the file and reads all the numbers from the file, and calculate/determine the following:

Counts how many numbers were read from the file

The sum of all the numbers in the file (a running total)

The average of all the numbers in the file

Determine the lowest and highest values in the file

The program must validate that the file was opened before reading from the file.

If file does not exist then display a message telling the user that the file could not be opened and exit the program.

Read Chapter 6. Be sure you can answer all of the Checkpoint questions as well as complete the Review Questions and Exercises.

Discussion 6

Discuss the importance of testing your programs well. Provide suggestions in how to determine what needs to be tested. What problems might occur down the road for poorly tested code? Remember, 2 posts are required: an original post to the above topic and then a response to another student’s posting.

Pose your questions about programming issues encountered this week and answer those of your classmates.

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.

Week 6 Programming Assignment 1

Drop Lowest Grade – Write a program that calculates the average of a group of test scores, where the lowest score in the group is dropped. It must have the following functions:

void getScore() should ask the user for a test score, store it in a reference parameter variable, and validate it. This function must be called by main once for each of the six scores to be entered (so 6 times).

Validate the test scores entered are greater than or equal to 0 and less than or equal to 100

Void calcAverage() should calculate and display the average of the five highest scores. This function must be called just once by main, and must be passed the six scores. Result must be displayed with a precision of 2.

int findLowest() should find and return the lowest of the lowest scores passed to it. It must be called by calcAverage, which uses the function to determine which of the six scores to drop.

Week 6 Programming Assignment 2

Rock, Paper, Scissors, Lizard, Spock game – Write a program that will play this game against the computer. The game should end once there is a winner. If the game is a tie then the program must make the user play again, until there is a winner. Once there is a winner, the program (game) must end. When the program begins, a random number is created between 1 and 5. These values will be used as follows:

1 – Rock
2 – Paper
3 – Scissors
4 – Lizard
5 – Spock

Use a menu to prompt the user for their choice, using the same values as above. The program should then display the computer’s choice and indicate who has won. A winner is selected using the following rules:

Course EvaluationPlease evaluate the course. You will have an opportunity to evaluate the course near the end of the session. A link sent to your CougarMail will allow you to access the evaluation. Please note that these evaluations are provided so that I can improve the course, find out what students perceive to be its strengths and weaknesses, and in general assess the success of the course. Please do take the time to fill this out.

Read Chapter 7. Be sure you can answer all of the Checkpoint questions as well as complete the Review Questions and Exercises.

Discussion 7

Functions play a big role in programming, even more so once we get to classes. Discuss the roll functions play in a program. What are the pros? Are there any cons? Remember, 2 posts are required: an original post to the above topic and then a response to another student’s posting.

Pose your questions about programming issues encountered this week and answer those of your classmates.

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.

Week 7 Programming Assignment 1

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 an 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:

The total rainfall for the year

The average monthly rainfall

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

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.

Week 7 Programming Assignment 2

Write a program that calculates information about sales during a year. This program will have an array that will hold the sales totals for 4 divisions (North, South, East and West, stored in an array as strings for the output) and for 4 quarters. This array will also hold the total for each division and for each quarter. These totals will be calculated by the program once the values have been inputted by the user. So this array will be a 2-dimensional array with the quarters as the columns and the divisions as the rows. The last column will hold the totals for the rows (division totals) and the last row will hold the totals for the columns (quarter totals). The program must use/create the following functions:

double getTotal(int [][COLS]) // gets the total of the complete array except for the totals in the last column and last row.

double getAverage(int [][COLS]) // return the average of all the values in the array except for the column and row with the totals in them.

double getRowTotal(int [][COLS], int) // returns the total for row that is specified by the second parameter to the function.

double getColumnTotal(int [][COLS], int) // returns the total for a column that is specified by the second parameter to the function.

double getHighest(int [][COLS], int&, int&) //returns the highest value in the array. Last two parameters are the index values of where the highest value is located in the 2D array; these can then be used to display which division and quarter.

double getLowest(int [][COLS], int&, int&) //returns the lowest value in the array. Last two parameters are the index values of where the highest value is located in the 2D array, these can then be used to display which division and quarter.

The program should output a table in the same format as below which will then be followed by the division and quarter with the highest value and the division and quarter with the lowest value.

Quarter 1

Quarter 2

Quarter 3

Quarter 4

Division Total

North

South

East

West

Quarter Total

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.

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

There are three questions for this week's post:

Compare vectors and arrays. Is one better than the other? How are they different?

Can you over comment your code? Commenting code is important but can we put in too much comment and it starts to get in the way?

What are the pros and cons of passing by reference?

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 (Saturday). 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. The proctored Final will be a computer-based test found in the Quizzes area; it will be available beginning Monday and must be completed by 11:59 p.m. Saturday as coordinated with your proctor. See the Proctor 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.

Student Accessibility Resources

Students with documented disabilities who may need academic services for this course are required to register with the office of Student Accessibility Resources. Until the student has been cleared through this 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 as soon as possible. The structure or the content of the course may make an accommodation not feasible. Student Accessibility Resources is located in Student Affairs in AHSC 215 and can be reached by phone at (573) 875-7626 or email at sar@ccis.edu.

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.

Attendance Policy

Attendance for a week will be counted as having submitted any assigned activity for which points are earned. Attendance for the week is based upon the date work is submitted. A class week is defined as the period of time between Monday and Sunday (except for week 8, when the work and the course will end on Saturday at midnight.) The course and system deadlines are based on the Central Time Zone.

Cougar Email

All students are provided a CougarMail account when they enroll in classes at Columbia College. You are responsible for monitoring
email from that account for important messages from the College and from your instructor. You may forward your Cougar email account to
another account; however, the College cannot be held responsible for breaches in security or service interruptions with other email
providers.

Students should use email 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.

No late discussion posts will be accepted.

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 course user guide provides details about taking an online course at Columbia 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.

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.