COSC 1315

Programming Fundamentals using C++


Revised:  May 21, 2008
By Richard G. Baldwin

File:  Pf00100.htm

The lessons in this series were written specifically for the benefit of my students in COSC 1315, Fundamentals of Programming at Austin Community College in Austin, Texas.  The lessons were written under the assumption that those students have no prior programming knowledge when they enroll in the course.

The material in these lessons was designed to supplement the textbook by teaching the concepts of programming fundamentals using a real programming language.  C++ is used for most of the examples, since that matches up with the requirements for laboratory programming assignments.  In an attempt to illustrate the commonality of modern object-oriented programming languages, a few examples are also illustrated using C# and Java in addition to C++.

The following table contains a cross reference among the topics covered in this series of tutorial lessons and the topics specified for the course in the ACC Master Syllabus for COSC 1315

In some cases the topics were paraphrased relative to the Master Syllabus and were separated into more easily identifiable units.  Then they were rearranged to put them in a more manageable order.

Lecture Notes Topic
103 Course Intro, History, Hardware, Programming Languages
105, 120, 130, 160 Developing A Program
Program Development Life Cycle
Program Design
105, 120, 130, 160 Coding Documenting and Testing a Program
140 Variables and Constants
150 Data Types
150 Bools
106 Formatting Output
200 Data Files
107 Sequence Structure
180 Selection Structures:  Relational and Logical operators
170 Selecting from several alternatives
170 Pre-test Loops
184 Post-test Loops
170 While Loops
184 Do while Loops
184 Counter Loops
184 For Loops
184 Sentinel Loops
180 Data Validation Loops
184 Nested Loops
170 Combining If's and Loops
108 Delegation and Functions (no parameters)
140 Global variables,
Global versus local variables,
See note 1 Parameter Passing : Import
See note 1 Parameter Passing : Export
108 Parameter Passing : Value Parameters
108 Parameter Passing : Reference Parameters
108 Value-returning Functions
190 Accumulators and Counters with Functions
190 Arrays
200 Parallel Arrays and Data Files
200 Using only part of an array,
190 Searching an array
150 String and Chars
110 Classes, objects, member functions, etc.
See note 2. GUI


  1. Professor Baldwin has no idea what was intended by the terminology Parameter Passing: Import and Parameter Passing: Export in the Master Syllabus.  Therefore, there are no tutorial lessons in this series that claim to cover these topics.  However, it is very likely that they are covered by the tutorials under more commonly-used terminology.
  2. Aside from the fact that the program development environment used in this course uses a GUI, there are no tutorial lessons in this series that claim to cover this topic.  In fact, the C++ curriculum at ACC doesn't cover this topic until the Advanced C++ course.

Copyright 2008, Richard G. Baldwin.  Reproduction in whole or in part in any form or medium without express written permission from Richard Baldwin is prohibited.

About the author

Richard Baldwin is a college professor (at Austin Community College in Austin, TX) and private consultant whose primary focus is a combination of Java, C#, and XML. In addition to the many platform and/or language independent benefits of Java and C# applications, he believes that a combination of Java, C#, and XML will become the primary driving force in the delivery of structured information on the Web.

Richard has participated in numerous consulting projects and he frequently provides onsite training at the high-tech companies located in and around Austin, Texas.  He is the author of Baldwin's Programming Tutorials, which have gained a worldwide following among experienced and aspiring programmers. He has also published articles in JavaPro magazine.

In addition to his programming expertise, Richard has many years of practical experience in Digital Signal Processing (DSP).  His first job after he earned his Bachelor's degree was doing DSP in the Seismic Research Department of Texas Instruments.  (TI is still a world leader in DSP.)  In the following years, he applied his programming and DSP expertise to other interesting areas including sonar and underwater acoustics.

Richard holds an MSEE degree from Southern Methodist University and has many years of experience in the application of computer technology to real-world problems.