Program for elevator application, Visual Basic Programming

Assignment Help:

You are given a console program in both VB and C# that uses a class CElevator (ElevatorAppAssign).

The main modules are in the assign directory class files.

Below is a discussion of that for VB; the one for C# is similar.

This discussion will show what is needed to write the class CElevator (in both VB and C#).

When this class is complete, add it to your projects, and then run the projects.

Hand in the code for CElevator and the output (one set for VB, one set for C#).

An explanation of the application code follows

The main module starts with:

Sub Main()

'Set time between floors

CElevator.TimePerFloor = 2.5

Dim anElevatorAs CElevator = New CElevator(0, 10, 8)

The class CElevation should have only one constructor that takes three parameters:

(1) lowest floor number

(2) highest floor number

(3) maximum number of passengers that can be on the elevator

The elevator initially should have no passengers and be at the lowest level.

anElevator.Status()

The method Status should output to the screen text with the following format:

The elevator is at floor XX, with YY persons

Console.WriteLine("At floor {0}", anElevator.Floor)

Console.WriteLine("Number of persons in elevator is {0}", _

anElevator.Occupants)

Console.WriteLine()

The property Floor should return the floor number the elevator is on, an integer.

The property Occupants should return the number of persons on the elevator.

The above two properties should not be capable of setting these values; only returning them.

anElevator.Enter(3)

anElevator.Enter(2)

anElevator.Leave(1)

Console.WriteLine("Number of persons in elevator is {0}", _

anElevator.Occupants)

Console.WriteLine()

The method Enter(noPass) tries to place noPass additional passengers on the elevator.

The method Leave(noPass) tries to remove noPass passengers from the elevator.

These methods must guard against having above the maximum number of passengers on the elevator, or less than 0 passengers on the elevator.

The Enter method should allow as many passengers as possible to enter the elevator.

In particular, if the elevator is full, print the console message:

"Elevator full, so no one entered"

If there are more people trying to enter the elevator than space permits, allow whatever number can enter, and print the console message:

"Only allowed XX persons to enter"

If there is room for everyone to enter, no message should be printed.

Similarly, the Leave method: should allow as many passengers as possible to leave the elevator.

In particular, if the elevator is empty, print the console message:

"Elevator empty, so no one left"

If there are more people trying to leave the elevator than are on the elevator, allow all the passengers to leave, and print the console message:

"Only have XX number of persons leaving"

If there is room for everyone to leave, no message should be printed.

anElevator.GoToFloor(3)

anElevator.GoDownOneFloor()

anElevator.GoDownOneFloor()

anElevator.GoUpOneFloor()

Console.WriteLine("At floor {0}", anElevator.Floor)

Console.WriteLine()

The method GoToFloor (fno) attempts to take the elevator to floor number fno.

The value of fno must be legal; if at attempt is made to go above the maximum floor number, print the console message:

"Trying to go past top floor"

Similarly, if an attempt is made to go below the minimum floor number, print:

"Trying to go below bottom floor"

In both of the above cases, do not move the elevator.

No message is needed for a legal elevator move.

The methods GoToTopFloor() and GoToBottomFloor( ) have the meaning you would expect.

The methods GoDownOneFloor, and GoUpOneFloor also have obvious meaning, but again, you must guard against illegal floors. In particular, If GoDownOneFloor tries to go below the minimum floor number, print the console message:

"Trying to go below bottom floor"

If the method GoUpOneFloor tries to go past the maximum floor number, print:

"Trying to go above top floor"

anElevator.GoToFloor(5)

Console.WriteLine("Time to get to floor 9 is {0:F2} seconds", _

anElevator.TimeToFloor(9))

The method TimeToFloor(fno) returns the number of seconds it will take to go from the elevator's current floor to floor fno. Your class should contain a class variable dTimePerFloorwhose value is 2.5 seconds (a double) and set in the first line of the client code. Use this for your computation.

The time go between floors is then printed via:

Console.WriteLine("Time to go between floors is {0:F2} seconds", _

CElevator.TimePerFloor)

anElevator.Empty()

Console.WriteLine("It is " _

&anElevator.IsEmpty.ToString.ToLower _

&" that the elevator is empty")

Console.WriteLine("It is " _

&anElevator.IsFull.ToString.ToLower _

&" that the elevator is full")

anElevator.Status()

Console.WriteLine()

The method Empty should have all passengers leave the elevator.

Similarly a method Full should result in the elevator having its maximum number of passengers.

The property IsEmpty should return True or False, a Boolean, depending on the occupancy of the elevator. Similarly, the property IsFull should return True or False, a Boolean, also depending on the occupancy of the elevator. These two methods should only return values.

The remaining code in this module tests that various methods do not behave incorrectly; no new methods are used.

 


Related Discussions:- Program for elevator application

Device context - visual c++, DEVICE CONTEXT The device context provides...

DEVICE CONTEXT The device context provides the essential drawing tools and the platform to draw. It helps to draw the text, shapes, lines etc. To create the device context, the

Steps to create a rectangle in the client region, STEPS TO CREATE A RECTANG...

STEPS TO CREATE A RECTANGLE IN THE CLIENT REGION 1. Generate a SDI application and name it as a brush. 2. Handle the WM_LBUTTONDOWN message for the CBrushView object id.

Refresh method - data control, The Refresh Method: The refresh method ...

The Refresh Method: The refresh method transfer to the first record in the record set. To invoke the refresh method follow the syntax which is as shown below: Form1.Data1.R

Fixed length strings, Fixed length strings: The Fixed length strings ar...

Fixed length strings: The Fixed length strings are declared by identifying the size of the string. For illustration to give a length of 20 for the string place, the declarati

Employee data, Part 1: Create an application that allows the user to enter ...

Part 1: Create an application that allows the user to enter the following employee data: First Name, Middle Name, Last Name, Employee Number, Department, Telephone Number, Telephon

Context-sensitive help, CONTEXT-SENSITIVE HELP   The Context-sensitive...

CONTEXT-SENSITIVE HELP   The Context-sensitive help gives online help for the circumstances which is associated with that state. The Context-sensitive help can be implemented

What is meant by dtd?, Question 1 Design a form based applications using l...

Question 1 Design a form based applications using labels, text boxes, and buttons to perform basic arithmetic operations on integers Question 2 Describe the concept of Except

Objective of vb script, The objective of this unit is to describe the basic...

The objective of this unit is to describe the basics of VBScript. After completing this unit, you will be capable to write code for Web pages via VBScript. You will be able to unde

Program to draw a rectangle shape , Create a project that draw a rectangle ...

Create a project that draw a rectangle shape which may be either (*) or (+) according to the selected radio button. The number of rows in the shape will be taken from the 1 st

XML with database, write a XML with database with book details( book id, au...

write a XML with database with book details( book id, author ,subject, published year, vendor,price, language )

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd