A. Lab # CIS CIS170A-A1
B. Lab 6 of 7: Arrays
C. Lab Overview – Scenario / Summary:
11. Given a set of program specifications for a simple business problem that requires the use of a collection of data to solve a business problem, code and test a program that implements arrays that meet the specifications and employ best programming practices.
12. Given a collection of data of a flexible and varying nature, design, code, and test a program that implements the use of a dynamic array that meets the specifications and employs best programming practices.
This lab will familiarize the student with arrays by storing values for rent in an apartment building in an array and displaying the correct rent, based on which floor of the building the unit is on.
Step Deliverable Points
5 Program Listing, Output, and Project Files 45
The Dropbox deliverables include the following:
1. Include a zipped file with all the files from your Visual Basic project (see directions in Doc Sharing on how to collect and zip files).
2. Create a single MS Word document and include the following:
• For each lab, copy and paste your code directly into the MS Word file.
• Include screenshot(s) of your test data with test results. Enter enough data to demonstrate that all your code has been tested.
• Include another screenshot of the VB build output messages. Check your build output to make sure you have a successful build with (0) errors and (0) warnings. NOTE: The build output messages appear at the bottom of your window after you click the Build menu and before you click the Start Without Debugging option. Your build output messages provide a list of compiler warnings or errors and let you know if your program compiled successfully.
• Include the Word document as part of the zipped project file.
3. Upload each part of the lab into its corresponding weekly Dropbox.
E. Lab Steps:
If you are using the Citrix remote lab, follow the login instructions located in the iLab tab in Course Home.
Step 1: Create a New Project
Create a Visual Basic Console Project in Visual Studio. Name the Project CIS170A_Lab06.
Write the program that will use arrays to store rent by floor and display the rent for the selected floor using the Processing Logic provided in Step 2.
Step 2: Program Description
In this project, you will create a program, using an array, which keeps a list of the rent rates for an apartment building. The rent rate for an apartment depends on which floor the apartment is located on and every apartment on the same floor has the same rent rate. The program shall read the name of the apartment building, how many floors the apartment building has, and get the rental rates for each of the floors. Once the rental rates are provided, the program shall list the rates. The program user shall be able to provide a floor number and the program will display the apartment building name, the total number of floors, the requested floor, and how much the rent is for the given floor.
The customer has several apartment buildings to choose from. The smallest apartment building has three floors and the largest apartment building has 20 floors. The program shall validate that the floor number is between the minimum and maximum floor values. Also, the minimum rental rate for any building is $1,000 per month, while the highest rent is $2,500. The program shall validate that the provided rental rates are within the minimum and maximum rates.
In Week 7, we will expand on this program and in order to easily modify it, your program will incorporate the following design features:
1. The design will be modular and the event handlers shall not contain any processing logic, but only invoke reusable modules.
2. All minimum and maximum values shall be declared as constants.
3. The user shall not be able to input the floor he or she wants to search for until after the apartment building name, the number of floors in the building, and the rent values for each of the floors in the building have been entered and validated.
4. Declare rentlist, numFloors, and requestedFloor as form level variables. All other variables should be declared locally as required.
The following shows the Program Hierarchy:
The following shows the flowchart of the program.
Step 3: Build The Form
The following is the Object, Property, Setting, Event chart for the form controls, and each input field will have a label/input field pair. Also, group the related information in the associated group box.
The form and form controls will be logically placed on the form, the controls aligned and sized, and a logical tab order will be assigned to each of the form controls.
Object Property Setting
frmRentList Text Apartment Rent List
lblHeading Text Name, Course Title, Week Number, Lab Title
grpApartmentInfo Text Apartment Building Information
lblName Text Apartment Name:
txtName Text (empty)
lblNumFloors Text Number of Floors:
txtNumberFloors Text (empty)
lstRents Items (empty)
btnRentData Text Get Rent List
grpFloorRequest Text Floor Request
lblFloorRequest Text Requested Floor
txtFloorRequest Text (empty)
btnGetFloorRent Text Get Floor Rent
grpResults Text Rent Results
lblRentResults Text (empty)
grpOperations Text Operations
btnClear Text Clear
btnExit Text Exit
Step 4: Implement the Event Handlers
Use the following as the design for your event handlers, referring to the flowchart for rules on input validation and processing. The final calculation SHOULD NOT be completed until all the input fields are validated.
Control Name Event Task
txtName Validating Get apartment name
Validate apartment name
txtNumberFloors Validating Get number of floors
Validate number of floors
btnRentData Click Collect Floor Rent
Add to lstRents
txtFloorRequests Validating Get requested floor
Validate requested floor
btnGetFloorRent Click Find Floor Data
Display Floor Data
btnClear Click Clear all textboxes and output label
btnExit Click Close program (Hint: use “Me.close”)
frmRentList Load Clear all textboxes and output label (Hint: call the ClearFields module)
Step 5: Executing the Program
To execute your code, click Start and then start debugging. Check your output to ensure that you have space(s) where appropriate. If you need to fix anything, close your execution window and modify your code as necessary and rebuild.
Step 6: Deliverables
1. Capture a screen print of your output [Do a PRINT SCREEN and paste into an MS Word document].
2. Copy your code and paste it into the same MS Word document that contains the screen print of your output.
3. Save the Word document as CIS170A_Lab06_LastName_FirstInitial
4. Zip up the Word document along with the complete set of project files into a single document.
5. Place deliverables in the Dropbox.
END OF LAB
* You can also use 2CO option if you want to purchase through Credit Cards/Paypal but make sure you put the correct billing information otherwise you wont be able to receive any download link.
* Your paypal has to be pre-loaded in order to complete the purchase or otherwise please discuss it with us at firstname.lastname@example.org.
* As soon as the payment is received, download link of the solution will automatically be sent to the address used in selected payment method.
* Please check your junk mails as the download link email might go there and please be patient for the download link email. Sometimes, due to server congestion, you may receive download link with a delay.
* All the contents are compressed in one zip folder.
* In case if you get stuck at any point during the payment process, please immediately contact us at email@example.com and we will fix it with you.
* We try our best to reach back to you on immediate basis. However, please wait for atleast 8 hours for a response from our side. Afterall, we are humans.
* Comments/Feedbacks are truely welcomed and there might be some incentives for you for the next lab/quiz/assignment.
* In case of any query, please donot hesitate to contact us at firstname.lastname@example.org.
* MOST IMPORTANT Please use the tutorials as a guide and they need NOT to be used for any submission. Just take help from the material.
******************************************** Good Luck ***************************************************
Any personal information received will only be used to fill your order. We will not sell or redistribute your information to anyone.
We will try our best to resolve the issue and if still persists we can discuss for a refund in case its required.