Bergen Community College

Division of Business, Math & Social Science

Spring 2002 Semester

 

Instructor: Professor Anita Verno

Office: S330

E-mail: averno@bergen.cc.nj.us

Telephone with Voice Mail: 201-447-7909

Web site:  www.bergen.cc.nj.us/faculty/averno

Office Hours:  TBA

 

 

Course Title:

INF- 145 Introduction to Visual Basic

 

Credits/Hours:

3 credits/2 hours lecture, 2-hour lab.

 

Recommended Co-requisite:

INF-150 Business Programming Logic

 

Course Description:

Introduction to Visual Basic provides the fundamental concepts required for problem solving using the Visual Basic event-driven programming language. Students will learn techniques for solving problems and how to express their solutions in a standard format. They will design graphical user interfaces, create objects and set relevant properties, and write related event procedures. They will use variables and create statements that use math, relational, and logical operators.  Students will also code decisions and loops. Sub procedures and Function procedures will be addressed including scope and parameter passing.  All applications will be implemented using structured programming techniques.

 

Textbooks and Supplies:

·         An Introduction to Programming Using Visual Basic 6.0, Fourth Edition by David I. Schneider, Prentice Hall, 1999.

·         Ten 3 ½" High Density Diskettes.

 

Course Objectives:

  1. Develop the ability to problem solve using structured programming techniques.
  1. Use standard formats to express programming logic.
  1. Understand the concepts of Visual Basic syntax and the importance of readability, conventional style, and documentation in programs.
  1. Write GUI programs that employ good programming style.
  1. Serve as the catalyst for future course work in Visual Basic.

 

Course Content:

See attached class schedule.

 

Grading:

Examinations:                                                              50%

·         Two exams.

·         Unannounced quizzes for bonus points towards exam grade

Lab assignments:                                                         20%

Final Project and presentation (Required):                       30%

 

Quizzes:

There will be several unannounced quizzes, each worth 10 points, given at the beginning of random classes.  The quiz material will be based upon the prior lectures and labs.  At the end of the semester, the average quiz score will be used as bonus points towards your exam grade – i.e. eight additional points will be added to your exam average if your quiz average is 8 at the end of the semester.  A quiz cannot be made up if missed.  A student entering class late, after a quiz has begun, will not be entitled to extra time to complete the quiz.  Students entering class after a quiz is completed will not be permitted to take the quiz.

 

Testing:

Students are required to take examinations on the day and time they are scheduled.  If special circumstances require a test schedule adjustment, this must be worked out in advance with the instructor.  If a student misses an exam (except for prearranged circumstances with the instructor) a zero grade will be assigned.

 

The instructor can be reached by telephone, e-mail, or written note left in the Divisional Office (during the day) A-306C or the Evening Office L-113. If there are extreme circumstances (documentation may be required) that prevent a student from taking a test according to the published schedule, use one of the above options to contact the instructor before the next class. An arrangement for a special testing schedule is solely at the discretion of the instructor. A student who waits for the next class session to speak with the instructor will not be accommodated with a special test schedule.

 

It is the student’s responsibility to finish an examination correctly and completely. Therefore, when computer Scantron forms are used as answer sheets, the student must use a Number 2 lead pencil and erase all stray marks completely. The burden of proper erasure is at test taking time. Once the examinations are returned to the students, there will be no grade adjustments made due to inappropriate completion of the response form.

 

Final Project:

Each student will be responsible for a final project. The project will be due upon entry into the last lab class. It will be demonstrated to the class and discussed at that time. If the project is not fully working at your demonstration time, credit will be allocated according to the skills listed on the project handout (attached). There will be no credit awarded for a program that does not run. The project is divided into sections, based upon concrete actions the students should be involved with during its development. Specific sections of the project are due prior to its demonstration and must be submitted on time for full project credit. Check the project handout (attached) for information.

 

Laboratory Work:

Laboratory assignments are hands-on productions that show the instructor that the student can competently use specified software.  When lab assignments are required for grading, they will be submitted as the student enters the lab on the assignment due date, and cannot be handed in late. Students may be asked to demonstrate their program to the instructor during lab. Certain lab assignments will be given and completed during one lab session. In this case, the student must submit the assignment upon exiting the lab.

 

It is anticipated that students will spend at least 6-hours per week in the free-time computer room perfecting their skills and completing their lab assignments. Lab assignments cannot be done any time other than when they are scheduled; therefore, the lowest lab grade will be dropped when calculating the student’s final average.  The student will not be permitted to pick up where he/she left off during the prior session when entering the next scheduled lab.

 

Student participation during lab time is highly recommended.  Students are required to sign out when exiting lab before the end of class.

 

Projects submitted without proper student identification (name, course, and instructor name) will be assigned a grade of 0. Projects that do not follow file-naming protocols (page number and exercise number OR Lab number) will win a 0.  Each project must be submitted on a separate diskette – one week’s assignment(s) per disk.

 

Homework:

In addition to any homework assignment given during class, it is a standing assignment that the student read each chapter of the book prior to its lecture. Following the lecture, the student should reread the material and work with the Practice Problems, Exercises, and Programming Projects throughout the text. It is anticipated that students will spend at least 2-hours per week reading and working with the exercises in the text.

 

Laboratory assignments that were not collected before the end of lab must be completed during free time (see Laboratory Work section above).

 

 

Policies:

·         Lateness – The roll will be taken at the beginning of class.  If the student is not in attendance at that time, he/she will be carried in the roll book as being absent unless the instructor is notified immediately after class.  Attendance sheets cannot be adjusted at following class meetings.

·         The student must adhere to all college polices.  Due to the nature of this course, it is recommended that the student review the policy titled “Acceptable Information Technology Use at Bergen Community College”.

·         The use of portable electronic devices such as pagers and cell phones is not permitted while class is in session.  Please be sure to silence electronic devices before entering class.

·         The use of audio devices such as CD and tape players, radios, and the use of college computers to play music during class is prohibited.

·         Students are expected to demonstrate listening, reading, note taking, and writing skills.  The student will need to take notes during class discussions and understand and follow verbal and written directions.  All assignments and correspondence with the instructor (including e-mail) must be well written in full sentence format.  Proper paragraph format must be used for all postings to the student bulletin board (if applicable).

·         The subject line of all e-mail correspondence to the instructor must contain the course number and section and student’s name.  Any e-mail received without this information will not be opened.

·         Plagiarism in any form will be treated as a failure to complete an assignment.

·         In borderline cases that arise in almost every class each semester a student’s attendance, class participation, attitude, and observed effort will be considered in helping to determine the student’s final grade.

 

 

If the instructor does not appear after 20 minutes following the scheduled time, students should generate an attendance list.  One volunteer member need deliver the list, containing the course title, date, and instructor’s name, to the Evening Office L-113 or to the Divisional Office (during the day) A-306C.

 

 


 

Introduction to Visual Basic – Course Outline

 

 

Week

Lecture*

Controls & Structures*

Lab*

1

Chap 1:  An Introduction to Computers and Visual Basic
Chap 2:  Problem Solving
Chap 3:  Fundamentals of Programming in Visual Basic (Sec 3.1-3.2)

Form, command button, label, text box, picture box

Orientation to Visual Basic
Page 68-70 #37-42, 44, 47

2

Chap 3:  Fundamentals of Programming in Visual Basic (Sec 3.3-3.4)

 

Page 137-138 #2-3

3

Chap 3:  Fundamentals of Programming in Visual Basic (Sec 3.5-3.6, Summary)

Input/output, Input box, message box, numeric functions, string functions, format functions

Page 116 #51
Page 138 #4

4

Test 1 – chap 1-3

 

Page 133 #127 modified for quarters, dimes, nickels, and pennies
Page 138 #5

5

Chap 4:  General Procedures

Sub procedures, functions

Page 161 #51
Page 198 #5 using functions for total calculations

6

Chap 5:  Decisions

If then, If then else, case

Page 219 #37 using CASE
Page 220 #43 using procedures for I/O and functions for calculations

7

Chap 6:  Repetition

For next, while do, do while

Page 274 #24

8

Test 2 – chap 1-6

 

Blast Off

9

Chap 7:  Arrays (Sec 7.1-7.3)

1-D arrays, control arrays

Page 322 #33,

10

Processing Arrays with Loops

Parallel arrays

Page 398 #9

11

Chap 7:  Sorting and Searching (Sec 7.4)

Binary search, bubble sort

Page 395 #3

12

Chap 11:  Additional Controls and Objects (Focus on TIMER p. 517, IMAGE p. 520, MENU p. 530, MULTIPLE FORMS p. 533)

Timer, image, menu, scroll bars, progress bars

Paint

13

Chap 12:  Visual Basic Debugging Tools

 

Begin Final Project

13

Continue Final Project

 

Project – Splash Page due

14

Continue Final Project

 

Project – Level 1 due

15

Final Project Presentations – 5 min or more

 

 

 

* Assignments may be modified or deleted based upon time constraints

 


 

Introduction to Visual Basic – Project Requirements

 

 

Create an on-line movie reservation system.  Users of the system will be greeted with a Splash page.  After 5 seconds, they will automatically proceed to an Opening page where they can select the desired movie and theater (information to be read and maintained in a text file).  An order form will then appear that permits entry of the number of tickets needed, and computes the price.  Credit card information will be requested.  Upon user acceptance of the order, a confirmation invoice will be displayed on the screen with a print option and a “thank you” message.  The order will then be considered complete, and the Opening page will reappear.

 

Splash Page

When the game begins, a screen should appear that graphically displays the name of your reservation system with a “welcome” message.  It should also display the author, course number and section, demonstration date, and the day/time your class meets.  A photo of the author is required.  The splash screen should be visible for 5 seconds, load the Opening page, and then unload. 

 

Opening Page

The Opening page permits the user to select the desired movie and theater and meets the following specifications:

·         Theater selection –combo box; 5 theaters required.

·         Movie selection – list box; 5 movies that run once a day, at the same time in each theater.

·         Upon selection of the theater and movie, the number of seats available must be displayed in a label.

·         Theater, movie, and seat information is to be maintained in a text file.  The file is to be read once when the program begins, but is to be rewritten each time an order is completed.

·         Contains 3 buttons – Reserve, Reset, End

o        Show the Order form when the Reserve button is selected.

o        Return all settings to the default when Reset is selected.

o        Exit the program when End is selected.

 

Order Form

The Order form will permit entry of the number of tickets needed, and compute the price.  Different prices are charged for Child, Adult, and Senior Citizen tickets.  Credit card information will be requested.  Upon acceptance of the order, a Confirmation page is displayed.  The Order form will need to meet the following specifications:

·         Credit card – combo box that permits three types of credit cards to be used.

·         Credit card number – entered into a text box, max of 16 digits – no letters, no spaces, dashes required in text box as pre-set placeholders.

·         Personal information

    • Name
    • Phone number – 12 digits; dashes required; 201 should be default area code.

·         Prices – three different prices for Child, Adult, and Senior Citizen displayed in labels.

·         Total Cost – automatically calculated as number of tickets are specified and displayed in a label.

·         Number of tickets needed

    • 3 blocks representing Child, Adult, and Senior Citizen.
    • Surround each block with a frame.
    • Block includes check box for ticket-type.
    • Four options representing 1, 2, 3, or 4 tickets needed.  The options begin disabled.  They are enabled when the check box next to ticket-type is selected.  Use control arrays to specify the four options for each ticket-type.
    • The total cost should be adjusted automatically as the number of tickets change.

·         Maximum number of available tickets cannot be exceeded.  If you attempt to order more tickets than available, a message box must appear.

·         Three buttons – Accept, Reset, Cancel

    • Show the Confirmation page with Accept is selected.
    • Return all settings to the default when Reset is selected including the number of available seats.
    • Return to the Opening page when Cancel is selected

 

Confirmation Page

The Confirmation page generates a text invoice with a print option and displays a “thank you” message.  The order will be completed and the user returned to the Opening page.  The Confirmation page will need to meet the following specifications:

·         Display a text invoice in columnar format – simple to read and understand.  Be sure to include all the information the user expects on an invoice (name, phone number, theater, movie, number of seats by type, price extended for each ticket-type, total price, credit card information).

·         Print Button – prints the invoice (hardcopy).

·         Displays a “thank you” message.

·         Update the text file to reflect the change in the number of tickets available.

·         Order Complete Button – return to the Opening page.

·         Return to the Opening page automatically after 2 minutes.

 

 

Note:  This is a professional business application.  Your GUI should be designed accordingly.  Use colors and graphics only to enhance the user experience.  Your code must meet professional standards with regard to comments, identifiers, and style.  Test each facet of your Reservation System (all possibilities) to be sure it works.  Have a friend try the system to insure that they cannot "break it".

 

 

 

Due Dates:

Splash Page                        __________

Opening Page                      __________

Order Form                          __________

Confirmation Page                __________

 

Point System:

1.                   Splash Page                                                                                                                        +12

A.      General (2)

B.      Timer for five seconds (5)

C.      Graphics & text as specified (5)

2.                   Opening Page                                                                                                                      +20

A.      General (2)

B.      Theater selection (4)

C.      Movie selection (4)

D.      Number of seats (4)

E.      Three buttons that perform as specified (6)

3.                   Order Form                                                                                                                          +30

A.      General (3)

B.      Credit card selection (2)

C.      Credit card number (2)

D.      Personal information (2)

E.      Three prices used properly (3)

F.      Total cost automatically calculated (3)

G.     Three number of tickets sections that work as specified (6)

H.      Options in control array (3)

I.         Number of tickets exceeded (3)

J.       Three buttons that perform as specified (3)

4.                   Confirmation Page                                                                                                                +15

A.      General (2)

B.      Text invoice nicely formatted (4)

C.      Print option produces nicely formatted invoice (4)

D.      Thank you message (2)

E.      Order complete button (1)

F.      Two-minute timer (2)

5.                   Data File                                                                                                                              +12

A.      Movie data read from file when program begins (6)

B.      File updated upon completion of order (6)

6.                   Sub procedure and sub functions appropriately used                                                                 +5

7.                   Comments, identifiers, and style meet professional standards                                                    +3

8.                   GUI designed for use professional use in a business environment                                               +3

 

 

Total Points:                                                                                                                                   100

 

Note:  A few extra credit points are available for independent learning and demonstration of concepts not specifically covered in class.  Extra credit points are awarded at the teacher's discretion.

 

 

Point System:

9.                   Splash Page                                                                                                                        +15

A.      General (2)

B.      Timer for one-minute (5)

C.      Graphics & text (5)

D.      Start/end/high score buttons (3)

10.               Level 1                                                                                                                                 +20

A.      General (5)

B.      Random number generator (5)

C.      Terminates after designated time or upon attainment of high score (5)

D.      Cheat (5)

11.               Level 2                                                                                                                                 +15

A.      General (3)

B.      Three distractions added to make game harder (6)

C.      Terminates after designated time or upon attainment of high score (3)

D.      Cheat (3)

12.               Level 3                                                                                                                                 +10

A.      General (2)

B.      Two distractions added to make game harder (4)

C.      Terminates after designated time, upon attainment of high score (2)

D.      Cheat (2)

13.               High Scores                                                                                                                         +25

A.      File I/O (5)

B.      Sorted (10)

C.      Add player (10)

14.               Multiple forms                                                                                                                        +5

15.               Module with public variables computing grade total for all play levels                                           +5

16.               Sub procedure and sub functions appropriately used                                                                 +5

 

 

Total Points:                                                                                                                                   100

 

Note:  A few extra credit points are available for independent learning and demonstration of concepts not specifically covered in class.  Extra credit points are awarded at the teacher's discretion.