using System;
namespace 楼梯问题
{
/// <summary>
/// Class1 的摘要说明。
/// </summary>
class Elevator
{
private int currentFloor = 1;
private int requestedFloor = 0;
private int totalFloorsTraveled = 0;
private int totalTripTraveled = 1;
private string myname;// = "ElevatorA" ;
//private Person passenger;
//ElevatorA myname = new Elevator("ElevatorA");
public Elevator()
{
myname = "ElevatorA";
}
//public void LoadPassenger()
// {
Person passenger = new Person();
// }
public void InitiateNewFloorRequest()
{
requestedFloor = passenger.NewFloorRequest();
Console.WriteLine("{0} " + "Departing floor: "+ currentFloor
+" Traveling to floor :" + requestedFloor +" totalTripTraveled " + totalTripTraveled,myname);
totalFloorsTraveled = totalFloorsTraveled +
Math.Abs(currentFloor - requestedFloor);
currentFloor = requestedFloor;
totalTripTraveled++;
}
public void ReportStatstic()
{
Console.WriteLine("Total floors traveled:"+ totalFloorsTraveled);
}
}
class Person
{
private Random randomNumberGenerator;
public Person()
{
randomNumberGenerator = new Random();
}
public int NewFloorRequest()
{
return randomNumberGenerator.Next(1,50);
}
}
class Building
{
//private static Elevator elevatorA;
public static void Main(string[] args)
{
//private static Elevator elevatorA;
Elevator elevatorA = new Elevator();
//elevatorA.LoadPassenger();
Console.WriteLine("The simulation is commenced");
elevatorA.InitiateNewFloorRequest();
elevatorA.InitiateNewFloorRequest();
elevatorA.InitiateNewFloorRequest();
elevatorA.InitiateNewFloorRequest();
elevatorA.InitiateNewFloorRequest();
elevatorA.InitiateNewFloorRequest();
elevatorA.InitiateNewFloorRequest();
elevatorA.InitiateNewFloorRequest();
elevatorA.InitiateNewFloorRequest();
elevatorA.InitiateNewFloorRequest();
elevatorA.ReportStatstic();
Console.WriteLine("The simulation is ended");
}
}
}