University of LaVerne-Athens Campus

Department of Science, Computer Science and Mathematics

Fall 2003


CMPS 301 - Programming Concepts 


Semester Hours:      4

Pre-requisites:          None

Requirement:           Computer Science and Computer Engineering, B.S.

Instructor:                 Nicholas Harkiolakis, Ph.D.

Associate Professor,

Chair, Dept. of Science, Computer Science and Mathematics

Office Hours:            Monday – Wednesday 9:00 – 3:00 by appointment


Message phone:       210-6898850



Course Description: 

Introduces programming using Visual Basic. Emphasizes problem solving and structured programming. Elementary input/output; arrays; strings; functions, and pointers.




·        To introduce a visual software development environment.

·        To familiarize the student with programming concepts and algorithm development.

·        To present basic structured programming elements.

·        To apply programming for the solution of real life problems.



Course Requirements:

·      Class attendance and participation

·      Weekly homework assignments

·      In class assignments




Visual Basic .Net  How to program, Second Edition

Deitel &Deitel, T.R. Nieto, Prentice Hall, 2003


Weekly Topics:

1.      Computing Concepts.                                                                                                                          September 29, 2003
Introduction. What Is a Computer? Computer Organization. Evolution of Operating Systems. Personal Computing, Distributed Computing, and Client/Server Computing. Machine Languages, Assembly Languages, and High-level Languages. History of Visual Basic. Other High-level Languages. Structured Programming. What Is Visual Basic? General Notes About Visual Basic.

2.      Integrated Development Environment.                                                                                            October 6, 2003
Integrated Development Environment Overview. Project Window. Toolbox. Form Layout Window. Properties Window. Menu Bar and Tool Bar. A Simple Program: Displaying a Line of Text.

3.      Introduction to Visual Basic Programming.                                                                                    October 13, 2003
Visual Programming and Event-Driven Programming. A Simple Program: Printing a Line of Text on the Form. Another Simple Program: Adding Integers. Memory Concepts. Arithmetic. Operator Precedence. Decision Making: Comparison Operators.

4.      Graphical User Interface Concepts.                                                                                                   October 20, 2003

Windows Forms. Event-Handling Model, Control Properties and Layout, Labels, TextBoxes and Buttons. GroupBoxes and Panels. CheckBoxes and RadioButtons

5.      Control Structures.                                                                                                                                October 27, 2003
Algorithms. Pseudocode. Introduction to Control Structures. If/Then Selection Structure. If/Then/Else Selection Structure. While Repetition Structure. Do While Repetition Structure. Do Until Repetition Structure.
Essentials of Counter-Controlled Repetition. For Repetition Structure. Examples Using the For/Next Repetition Structure. Select Case Multiple-Selection Structure. Do/Loop While Repetition Structure. Do/Loop Until Repetition Structure. Exit Do and Exit For Statements. Data Type Boolean. Constant Variables. Logical Operators. Visual Basic Data Types.

6.      Sub Procedures and Function Procedures.                                                                                      November 3, 2003
Form Modules. Sub Procedures. Function Procedures. Call-by-Value vs. Call-by-Reference. Exit Sub and Exit Function. Storage Classes. Scope Rules. Random Number Generation. Example: A Game of Chance. Recursion and the Factorial Function.

7.      Arrays.                                                                                                                                                     November 10, 2003
Declaring Arrays. Examples Using Arrays. Passing Arrays To Procedures. Sorting Arrays. Searching Arrays: Linear Search and Binary Search. Multidimensional Arrays. Control Arrays. Dynamic Arrays. Variable Arguments: Param Array.
Function Array.

8.      Object-Based Programming                                                                                                                November 10, 2003

Introduction. Implementing a Time Abstract Data Type with a Class.

Class Scope. Controlling Access to Members. Constructors. Using Overloaded Constructors. Properties. Composition. Using the Me Reference.

9.      Data Abstraction and Information Hiding                                                                                       November 17, 2003

Software Reusability. Namespaces and Assemblies. Class View and Object Browser

10.  Object-Oriented Programming: Inheritance                                                                                    November 24, 2003

Base Classes and Derived Classes. Protected and Friend Members

Relationship between Base Classes and Derived Classes. Constructors and Finalizers in Derived Classes. Software Engineering with Inheritance

11.  Visual Basic Macros and Excel                                                                                                           December 1, 2003

Enhance Excel solving power using Visual Basic macros.

12.  Review                                                                                                                                                    December 8, 2003



Method of Evaluation

·      Class Attendance and Participation:                            50%

·      Homework assignments:                                               50%



Plagiarism Policy:  Students are responsible for performing academic tasks in such a way that honesty in not in question.  Please refer to the Academic Honesty Policy in the University Catalog for the full detailed policy on this matter.



Attendance Policy:  Attendance is Compulsory.  Contact instructor for any absence.  Final student grade will be reduced by 10% for every absence made above three. Course must be dropped if missing more than five class sessions



Class Participation:  Students are expected to follow the professor’s guidelines for working classroom assignments.



Make-up and late assignments: Students are expected to manage their time appropriately so as to submit their assignments on time. Late assignments will receive no credit. Exceptions to this rule will be considered on an individual basis.



This course may be modified, verbally or in writing, at any time during the term at the discretion of the instructor or department



Sample Projects:

1.    Development of a simple calculator



2. Target hit game. When the projectile hits the ground, an explosion takes place. The game is used as an introduction to classes and objects



3. Flower



4. Eyes (they always follow the mouse pointer)

5. Hangman (Genie is a Microsoft agent that guides and comments)