Programming I (Visual Basic) Syllabus

Course Description:

Visual Basic is a programming language.  It is an object orientated  language.  One of the first object-orientated languages was Pascal.  An object-orientated computer language contains pre-built self-contained modules that can be easily incorporated into your program.  In this class you will learn how to use the Visual Basic programming environment and how to write Basic programs.  

Course Goals:

1. To give students an introduction to computer programming.

2. To allow those students, who intend to pursue computer related vocations, to increase their knowledge of computer programming.

3. To better prepare students to compete successfully at the college level.

4. To increase the students ability to analyze a problem, and to construct algorithms for it's solution.  

Grading Policies

Nine week marking period grades will be based on:

Citizenship 15% Quizzes 25%

Notebook and Unit assignments 20% Tests 40%

Citizenship:  

At the end of a marking period 10 citizenship points, minus any deductions, will be given.  Situations which can result in a loss of citizenship points include, but are not limited to:  tardies, assignments not completed on time, inattentive in class, playing games on the computer, coming to class unprepared, and suspensions.  

Notebook and Unit Assignments:  

A 3-ring notebook, in good condition, is required and will be collected approximately every two weeks.  The notebook should have a cover with the name of the student and the class.  All pages in the notebook are to be secured.  No loose pages!  

The contents should be the following:

a) All handouts for each unit.  Most handouts for each unit are being included with this manual.  You need to place it in a 3 ring binder and keep it organized.  Use tabs to separate the units.  

b) Code for each exercise and problem.  Code printouts must clearly indicate the problem or exercise that it pertains to.

c) Tests and quizzes for each unit.

Problems and exercises for each unit can be graded at any time.  The procedure for grading unit exercises and problems is as follows:

1. Notebook must be present in class.

2. Printout of the exercise or problem to be graded must be in the notebook

3. Student must demonstrate to the instructor that the program works as desired in the problem description.

Quizzes:  

There will be approximately one quiz per unit beginning with unit 3

Tests:  

There will be approximately two tests per 9-week marking period.  Tests involve many problems and will be given over several days.

Semester Grades:  

Will be determined by computing a weighted average of the first marking period (40%), the second marking period (40%), and the semester final exam (20%).

All assignments must be submitted for grading on the date they are due.  Late assignments will be marked down at the rate of 20% per day.  Notebooks and associated assignments may not be late more than two days without permission.  All missed tests and quizzes, due to excused absences, must be made up within five school days, and it is the responsibility of the student to check with the teacher regarding make-up assignments when they return from an absence.  Failure to do so will probably mean that these assignments will not be graded for credit since only five days are allowed for such make-up work.  No test or quiz may be made up after five days without permission.  

Sample Grade Calculation

Notebook =  95% Quiz = 85% Test = 82% Citizenship = 90%  (1 tardy)

Marking Period Grade= 95 X 0.20  +  85 X 0.25  +  82 X 0.40  +  90 X 0.15 = 86.6% or a B

(Note:  Had the citizenship grade been 100% the final weighted average would have been 88% or a B+. )

Expectations

Students are expected to come to class on time, follow school policies,  and behave in an respectfully manner.  No CD's DVD's are allowed in class.  Water is allowed, but food and all fruit drinks are prohibited.  Furthermore, since this class deals with programming, there is no reason to be on the Internet unless you are specifically looking for programming coding examples.  In that case you should inform your instructor.  

Posting of Grades

Grades are posted every week by student number beginning with the fifth week of each marking period.  In addition, your current progress in this class is available on the Internet at http://lehs.lapeer.org/Teachers/PGormley/HomePage.html.  After accessing this page, follow the "Check Grades" link.  You will need your student number to access your record.  This service will go into effect beginning with the fourth week of the first marking period.

Progress Reports

Weekly progress reports will be sent to your parents, if they choose to participate, via e-mail, this school year.  These reports will normally be sent out each time grades are uploaded to the Internet (see Posting of Grades above).  If you would like your parents to receive these electronic progress reports fill out and return the last page of this syllabus or contact your instructor.  

Textbook

There is no textbook for this class.   Mr. Conner, West instructor, compiled many materials for Basic Programming I and II.   This manual draws heavily on those materials.  

 
Topics to be Covered

I. Unit I:  Visual Basic (VB) Programming Environment

 A. The Form

  1. Measurement in Chemistry

  2. Symbols, Formulas, and Equations

 B. Entering a simple VB Program

  1. Graphics

  2. Pixel's, Coordinates, Pset, and Line Statements

 C. Simple ways to execute a VB program

  1. Form Activate

  2. Command Buttons

II. Unit II:  Basic Programming

 A. General Concepts

  1. Print statement

   a) Semicolon

   b) Comma

  2. Numbers and Numeric Operations

  3. Level of Precedence

  4. Comma--More than one statement per line

  5. Remark statements--Apostrophe and REM

  6. String Constants

  7. String Variables

  8. Comparing Strings

  9. Dimension (DIM)  Statement

 B. Exercises & Problems

III.  Unit III:  Loops

 A. Basic Concepts

  1) For/Next Loops

  2)  Nested Loops

  3) Do Loops

   a) Do While

   b) Do Until

 B. Exercises & Problems

IV.  Unit IV:  Input and Conditional Statements

 A. General Concepts.

  1. Input Box Function.

  2. If-Then Statement.

  3. Logical Operators--AND and OR.

 B. Exercises & Problems

V. Unit V:  Random numbers, String Manipulation and Arrays

 A. General Concepts.

  1. Random Number Generator (RND statement)

  2. String Manipulation Commands

   a) Mid$

   b) Left$

   c) Right$

   d) Len$

   e) UCASE$

   f) LCASE$

  3) Subscripted Array's

 B. Exercises & Problems

VI. Unit VI:  Form, Toolbox, and Properties Window's

 A. General Concepts

  1. Form Window

  2. Toolbox Window

  3. Properties Window

 B. Exercises & Problems

VII. Unit VII:  ASCII, KeyPress events, and dates

 A. General Concepts

  1. ASCII code

  2. KeyPress Events

  3. Now function

 B. Exercises & Problems

  1) Cereal Program

  2) Triangle Inequality Project

  3) Prime Numbers Project

VIII. Unit VIII:  Strings, Comparisons, and Messages

 A. General Concepts

  1. String Literal

  2. String Variable

  3. String Concatenation

  4. Comparisons

  5. Messages (Msg) and the MsgBox function

  6. UCase, LCase, and Len functions

  7. Input Box function

  8. StrComp function

 B. Exercises & Problems

IX. Unit IX:  Intermediate Projects

 A. Problems

  1. Pyrtagorean Triples

  2. Distance Between Cities

  3. Skateboard Problem

  4. Locker Problem

  5. Revised Roman Decimate Problem

X. Unit X:  Formatting output

 A. General Concepts

  1. Built-in Formatting

  2. Userdefined Formatting

  3. Formatting Date and Time

 B. Exercises & Problems

XI. Unit XI:  Multiple Forms

 A. General Concepts

  1. Form Layout Window

  2. Project Explorer Window

  3. Properties Window

 B. Exercises & Problems

XII. Unit XII:  Graphics

 A. General Concepts

  1. Pixel

  2. TWIP

  3. Line Control

  4. Shape Control

  5. Picture box Control

  6. Image Box Control

  7. Timer Control

 B. Exercises & Problems

XIII. Unit XIII:  Controls and Case statements

 A. General Concepts

  1. Control Array

  2. Select Case

 B. Exercises & Problems

XIV. Unit XIV:  Final Projects

 A. Project Examples

  1. Teacher Schedule Program

  2. Educational Shape and Colors Game

  3. Black Jack Problem

  4. Hangman Game

  5. Slot Machine Game

  6. Tick-Tac-Toe Game

  7. Stable Marriage Problem

Parents

Progress Reports

I will be sending progress reports electronically, that is, by e-mail.  These reports will normally be sent out each time grades are uploaded to the Internet (see Posting of Grades on the Syllabus passed out to your student).  

If you would like to participate in this experimental venture, provide the required information below. (Note:  Please print your e-mail address clearly. )

Student's Name: _____________________________________

Class: Basic Programming I

Parent's Name: _____________________________________

Parent's e-mail address: _______________________________@ __________________

Parent's signature: _________________________________________

I hope to send out the first electronic progress report by the end of the fourth week of the first marking period.  Test runs will probably occur during the second and third weeks of the marking period.  Please ignore these test messages.  (They will contain  information to this effect on the first line of the message.)  If you do not receive at least one test message from me by the fourth week of the marking period please contact me.  

If you have access to the Internet and would like to participate, but do not have an e-mail address, please contact me at the high school (810-667-2418) and  I will try to set up an e-mail account for you.  

Please sign the above form, even if you choose not to participate, so that I know you reviewed the information.  If you choose not to participate, leave the parent's e-mail line  blank.  

Thanks,

Patrick Gormley, instructor

Lapeer East High School

Lapeer East: Basic Programming Syllabus  August 2004 page