
Introduction to Programming in C++
Course Content from ZyanteOverall Rating | |
---|---|
Content Rating |
This course introduces programming in C++ and teaches the core computer science concepts of variables, branching, loops, vectors, and functions. Introduces object oriented programming with classes and inheritance. Covers use of pointers and streams. Teaches a variety of good coding practices, including iterative development, code formatting, avoiding common errors and debugging techniques.
Zyante’s Programming in C++ course provides a highly interactive “learn by doing” experience. This is especially significant for computer programming which is a hands-on field in which students learn best by trying ideas in code. Zyante’s offerings explain concepts with a variety of tools: animations, question sets, interactive exercises, and video demonstrations that both engage students and provide very effective ways of explaining concepts that students often struggle with.
Zyante has also tightly integrated various aspects of the course - the reading material, the video lecture, the self-assessment questions, the programming development environment - thus providing a clear learning path.
Universities using Zyante's offerings include: University of Texas at Austin, University of Michigan, University of Arizona, Arizona State University, Iowa State University, UC Davis, UC Riverside, UC Merced, University of Illinois at Chicago, University of South Florida, Virginia State University, University of Adelaide, University of Alaska and several others.
- Self Paced
- Computer Science
- Content by Zyante
After completing this course, students will be able to:
- Explain the basics of how a computer works, then write a first program
- Use standard input and output, and understand common syntax errors
- Declare and initialize variables with valid identifiers
- Use a variety of integer data types and the concept of overflow. Use floating-point, character, and string data types
- Convert decimal to binary and vice-versa
- Cast between data types
- Develop programs that branch based on user input
- Write expressions with relational and equality operators and develop expressions with logical operators
- Use multiple branches for more complex programs
- Use the Boolean data type to store results of conditional statements
- Access elements in arrays and vectors
- Understand memory usage for single and multi-dimensional arrays
- Combine loops and vectors, and develop programs with multiple vectors
- Resize a vector using user-input
- Write a C string as null-terminated string and manipulate C strings with common functions
- Understand common errors between C string and strings. Use a library for char data-type analysis
- Write a first function, then return from a function and parameterize a function
- Learn reasons to use a function
- Combine functions with branches and loops and use incremental development with functions
- Know how to pass-by-reference to functions and to overload user-defined functions
- Send and use arguments passed to program
- Write makefile for modular compilation
- Write structs for grouping data, combine structs and functions, then combine structs and vectors
- Write classes that group functions and data
- Initialize class variables with class constructors and overload class constructor
- Introduce abstract data types
- Explain the reasons for using pointers
- Define a variable that points to a memory location, allocate and deallocate memory
- Use different regions of program memory
- Identify and fix memory leaks
- Use class destructors, copy constructors, and copy assignment operator
- Understand standard input and output implementation
- Manipulate text and floating-points during output
- Read input from a string with string streams
- Input and output to a file
- Derive a class from another class and choose the appropriate access specifier
- Override member function of inherited class
- Introduce polymorphism during runtime
Topic | Lesson | Subtopics | Objectives |
1 | Basic input and output |
|
|
2 | Variables |
|
|
3 | Branching |
|
|
4 | Loops |
|
|
5 | Arrays and Vectors |
|
|
6 | Strings and C Strings |
| |
7 | Functions |
|
|
8 | Classes |
|
|
9 | Pointers |
|
|
10 | Streams |
|
|
11 | Inheritance |
|
|
StraighterLine suggests, though does not require, that students take Pre-Calculus or its equivalent before enrolling in this course.
StraighterLine provides a percentage score and letter grade for each course. A passing percentage is 70% or higher.
If you have chosen a Partner College to award credit for this course, your final grade will be based upon that college’s grading scale. Only passing scores will be considered by Partner Colleges for an award of credit.
There are a total of 1000 points in the course:
Topic | Assessment | Points Available |
1 | Programming assignments: ASCII Art | 25 |
2 | Programming assignments: Caesar’s Cipher with Lowercase Characters | 25 |
2 | Quiz 1 | 50 |
3 | Programming assignments: Caesar’s Cipher with Alphanumeric Characters | 25 |
4 | Programming assignments: Caesar’s Cipher with Sentences and Brute-Force Code Breaking | 25 |
4 | Quiz 2 | 50 |
5 | Programming assignments: Substitution Ciphers and Brute-Force Code Breaking | 25 |
5 | Midterm | 200 |
7 | Programming assignments: Breaking Transposition Ciphers | 25 |
7 | Quiz 3 | 50 |
9 | Programming assignments: Breaking Substitution and Transposition Ciphers | 25 |
9 | Quiz 4 | 50 |
11 | Programming assignments: Cryptographic File Manager | 25 |
11 | Final | 400 |
Total | 1000 |
Final Proctored Exam
The final exam is developed to assess the knowledge you learned taking this course. All students are required to take an online proctored final exam in order complete the course and be eligible for transfer credit.
I am a high school teacher and needed this for recertification. Great refresher.
I am a high school teacher and needed this for recertification. Great refresher.
Coming from a non CS background, this course did a great job in guiding me through the basics of programming in C++. I would definitely recommend this course to students who are trying to learn programming from the ground up.
I think it is a great course for any person learning C++ for the first time. It is extensive with a lot of codes to refer to and learning assignments as well.
Coming from a non CS background, this course did a great job in guiding me through the basics of programming in C++. I would definitely recommend this course to students who are trying to learn programming from the ground up.
I think it is a great course for any person learning C++ for the first time. It is extensive with a lot of codes to refer to and learning assignments as well.