Hello, dear friend, you can consult us at any time if you have any questions, add WeChat: daixieit

ISM 3232 - Fall 2023 - Individual Assignment #1

DUE DATE: 9/22/23

ASSIGNMENT OBJECTIVES

•      Use Visual C# 2022 to create a project.  (*** See the next page for the correct project name to use. ***)

•       Observe professional programming style guidelines (e.g., comments, indentation, etc.).

•      Determine the most appropriate C# controls to use to accomplish the requirements of the program.

•       Properly declare all necessary constants and variables with appropriate data types and scopes.

•       Follow appropriate standardized naming conventions for constants, variables, and controls.

•       Write code to accept input from the user, perform calculations, and convey output to the user.

•       Format output so that it displays appropriately for the situation involved (e.g., as currency).

BUSINESS SCENARIO

Motorway Motel is a privately-owned motel in West Florida that has been in the Sorrell family for two generations.  The motel ownership and staff prides itself on the personal attention given to each of the motel's guests. This special care, along with the clean and well-maintained accommodations, has resulted in a very successful business, even

when competing against the large chains that dominate much of the motel business. Desk clerks at the motel

currently handle the billing procedure when a guest checks out with paper forms and a calculator. Bob Sorrell,

principal owner of the motel, is interested in having this check-out billing procedure automated with a computer

program. He has asked you to design the first prototype of a guest check-out program to be used by his desk clerks.

ASSIGNMENT REQUIREMENTS

•      At the top of the project form should be a PictureBox control that displays an image related to motels. (Search the Web for an appropriate motel image file to import into your project for use in the PictureBox.)

•       Beside, or below, the PictureBox should be a Label control used to display the text "Motorway Motel" (without the quotation marks). This text should display in a large font size (e.g., greater than 20 point size). The fore-

ground and background colors of this label must be changed from the default colors to other colors of your choosing. The label should also include a border.

•       Directly below this PictureBox and Label is to be a control into which the user can enter the date ( in 00/00/0000  format) on which the guest is checking out of the motel. (All input and output controls must be properly labeled.)

•      Next, four groups of controls (described directly below) should be set apart by the use of four GroupBox controls.

•       Guest Information - Two controls must be provided in which the guest's first name and lastname can be entered.

•       Room Information - A control must be provided in which the clerk will enter the guest's room number which is always exactly 3 digits in length (e.g., 205). Also provided must be controls to hold the number of nights the

guest has stayed at the motel as well as the nightly dollar rate charged for the room.

•      Additional Charges - Here, three controls must be provided into which the clerk can enter any optional charges which are separated into three amounts: mini bar charges, telephone charges, and miscellaneous charges.

•       Billing Summary - Here are five output controls that display the results of the calculations described below.

•      All calculations are to be initiated by the user clicking a Total button. When this button is clicked, the program is to calculate five values that are displayed in a column in the Billing Summary area: 1) room charges (the length   of the stay in nights times the nightly room rate), 2) additional charges (the sum of the three optional charges

described above), 3) subtotal (the sum of the room charges and the additional charges), 4) tax amount (the

subtotal times the tax rate, which is currently 7%), and 5) total charges (the sum of the subtotal plus the tax).

Separate the total charges value from the other values above it with a short horizontal line. (Hint: See Visual C# Lab II.) Also, when the Total button is clicked, the focus should be sent to the Clear button (described below).

•      Your program code should utilize a Try-Catch statement so that the program will not crash if the user enters

invalid data into any of the input controls. Instead, an appropriate error message should display if an error

occurs. (Hint: Study the solution code for Programming Problem 3- 14 to see how to allow null (blank) values to exist in one or more of the data input controls (e.g., the additional charges) without causing an error to occur.)

•       There are to be four buttons in a row at the bottom of the form which initiate actions: Total, Clear, Help, and Exit (from left to right). There should be an Access Key defined for each of these four buttons

•       The Clear button is to be used to clear the form controls and to return the form to its original state. When this

button is clicked, all data entry boxes should be cleared as well as the controls displaying calculated data. Also, when this button is clicked, the focus should be sent to the first data entry control on the form.

•       The Help button is to be used to display a messagebox to the user containing basic instructions for using the

program. (Although this need not be elaborate, it should adequately cover all the steps required to use the form.)

•       The Exit button is to be used to terminate the program. (Use the Close method to accomplish this.)

•      You should design your program code to be flexible – write your code so that likely future changes (e.g., tax rate changes) can be accommodated easily by yourself or another programmer. (Hint: Remember what a constant is.)

•      You are to give meaningful names to all form controls used in your program and all constants and variables used in your code. Follow the standard C# naming conventions described in class and followed in your textbook.

•      Use appropriate labels to clearly identify all input and output controls, and include a brief meaningful form description in the form’s title bar.

•       The alignment, spacing, and sizing of all controls should be appropriate, neat, and professional in appearance.

•       Text displayed on the form must exhibit correct spellinggrammar, punctuation, and consistency of style.

•      When the program runs, the form should display in the center of the screen.

•       The tab order should be set correctly so that focus flows logically through the controls on the form.

•       The Billing Summary out data (five currency values) should be displayed with the correct currency format.

•       Data representing numeric values, including currency values, should be displayed right-aligned in controls,

while text values (values not used in calculations, such as names) should be displayed left-aligned in controls.

•      You should use comments very liberally throughout your program. Explanatory comments for each event handler as well as for each significant block of code are necessary.

•       There must be an initial comment in your program’s code, before all other code, similar to this (using your own name and project name, of course):

// Programmer: John Doe                           (Use your own name and project name, of course.)

// Project: Doe_1

// Due Date: 09/22/2023

// Description: Individual Assignment #1

DELIVERABLES

•       Submit your assignment via Canvas following the instructions provided below. This assignment is due no later

•      Name your C# project as:  YourLastName_1 (for example, Smith_ 1, if your lastname is Smith). 

•       If your program will not run, place a comment to that effect at the very top of your code. (It is better if you can get your program to run, even if not all required functionality can be successfully implemented. If necessary,    comment out any code lines that prevent your program from running. You are encouraged to use comments to  clearly identify code lines or blocks that you have identified as being incorrect.)

Note: Any comments on the assignment should be made in your code, not on the Canvas submission page.)

•      Use either Windows native compression utility or an archiving program such as 7-Zip or WinZip to zip your entire project folder into a single .zip file. Make sure that all folders and files that makeup your project are   included.  (Refer to the handout posed on Canvas titled “Zipping and Unzipping a Visual C# Project” for

specific details on this procedure.)

•       Log into our class Canvas site and submit your zipped project file in the following manner:

. Enter the “Assignments” area, and click on the item labeled “Assignment #1” .

. Then, while viewing the assignment description, click the link labeled “Submit Assignment” that is to the right of the assignment information.

. Then, in the File Upload box that displays, click the “Choose File” button in order to specify your source code file on your computer as the file to submit.

. After selecting your assignment file, click the button labeled “Submit Assignment”. (Only click this button after you have selected the assignment file.) After you have submitted your assignment file, Canvas will

display a confirmation to you.

. If you would like to see a tutorial on how to submit an assignment file in canvas, goto this webpage:

https://guides.instructure.com/m/4212/l/41972-how-do-i-submit-an-online-assignment

This is an individual assignment.  You are NOT to discuss it with other students or collaborate with other students in any way. If you have questions about this assignment, contact your instructor.