示例#1
0
        static void doWork()
        {
            Console.WriteLine($"Journey by Airplane");
            Airplane myplane = new Airplane();

            myplane.StartEngine("Contact");
            myplane.TakeOff();
            myplane.Drive();
            myplane.Land();
            myplane.StopEngine("whiiirrr");

            Console.WriteLine($"journey by Car");
            Car mycar = new Car();

            mycar.StartEngine("BRRRRMMMMM");
            mycar.Accelerate();
            mycar.Drive();
            mycar.brake();
            mycar.StopEngine("phut phut");

            Console.WriteLine("\nTesting Polymorphism");
            Vehicle v = mycar;

            v.Drive();
            v = myplane;
            v.Drive();
        }
        static void doWork()
        {
            Console.WriteLine("Journey by airplane");
            Airplane myAirplane = new Airplane();

            myAirplane.StartEngine("Contact");
            myAirplane.TakeOff();
            myAirplane.Drive();
            myAirplane.Land();
            myAirplane.StopEngine("whirr");

            Console.WriteLine("Journey by car");
            Car myCar = new Car();

            myCar.StartEngine("Vroom");
            myCar.Accelerate();
            myCar.Drive();
            myCar.Brake();
            myCar.StopEngine("Phut Phut");

            Console.WriteLine("\nTesting Polymorphism");
            Vehicle v = myCar;

            v.Drive();
            v = myAirplane;
            v.Drive();
        }
示例#3
0
        private static void ExecuteCommand(Vehicle vehicle, string command, double value)
        {
            switch (command)
            {
            case "Drive":
                Console.WriteLine(vehicle.Drive(value));
                break;

            case "Refuel":
                try
                {
                    vehicle.Refuel(value);
                }
                catch (ArgumentException ex)
                {
                    Console.WriteLine(ex.Message);
                }
                break;

            case "DriveEmpty":
                ((Bus)vehicle).SwitchOffAirConditioner();
                Console.WriteLine(vehicle.Drive(value));
                ((Bus)vehicle).SwitchOnAirConditioner();
                break;
            }
        }
示例#4
0
        static void doWork()
        {
            Console.WriteLine("Journey by airplane:");
            Airplane myPlane = new Airplane();

            myPlane.StartEngine("Conctact");
            myPlane.TakeOff();
            myPlane.Drive(); //Drive() method in base class Vehicle and ovveriden method are not the same
            myPlane.Land();
            myPlane.StopEngine("Whirr");

            Console.WriteLine();

            Console.WriteLine("Journey by car:");
            Car myCar = new Car();

            myCar.StartEngine("brm brm");
            myCar.Accelerate();
            myCar.Drive(); //Drive() method in base class Vehicle and ovveriden method are not the same
            myCar.Brake();
            myCar.StopEngine("Phut phut");

            Console.WriteLine("\nTesting polymorphism");
            Vehicle v = myCar; //creating a reference to Car object by using a Vehicle variable

            v.Drive();         //calls Drive() method by using Vehicle variable (which is Motoring)
            v = myPlane;
            v.Drive();         // this is Flying
        }
示例#5
0
        static void doWork()
        {
            Console.WriteLine("Journey by  Plane");

            AirPlane plane = new AirPlane();

            plane.StartEngine("ssssss..........");
            plane.TakeOff();
            plane.Drive();
            plane.Land();

            plane.StopEngine("brrr");
            //plane = null;

            Console.WriteLine("Journey by  Car");

            Car car = new Car();

            car.StartEngine("vrooom");
            car.Accelerate();
            car.Drive();
            car.Brake();
            car.StopEngine("bleeep");
            //car = null;


            Vehicle v = car;

            v.Drive();

            v = plane;
            v.Drive();
        }
示例#6
0
        static void doWork()
        {
            Console.WriteLine("Journey by airplane:");
            Airplane myPlane = new Airplane();

            myPlane.StartEngine("Contact");
            myPlane.TakeOff();
            myPlane.Drive();
            myPlane.Land();
            myPlane.StopEngine("Whirr");

            Console.WriteLine("\nJourney by car:");
            Car myCar = new Car();

            myCar.StartEngine("RUM RUM brrrrm");
            myCar.Accelerate();
            myCar.Drive();
            myCar.Brake();
            myCar.StopEngine("Phut Phuttt..");

            Console.WriteLine("\nTesting polymorphism");
            Vehicle v = myCar;

            v.Drive();
            v = myPlane;
            v.Drive();
        }
示例#7
0
        static void doWork()
        {
            Console.WriteLine("Journey by airplane");
            Airplane myFlight = new Airplane();

            myFlight.StartEngine("Contact");
            myFlight.TakeOff();
            myFlight.Drive();
            myFlight.Land();
            myFlight.StopEngine("whirr");

            Console.WriteLine();
            Console.WriteLine("Journey by car");
            Car myVW = new Car();

            myVW.StartEngine("Loud Deisel Rumble");
            myVW.Accelerate();
            myVW.Drive();
            myVW.Brake();
            myVW.StopEngine("sad rumble");

            Console.WriteLine("\nTesting polymorphism...");
            Vehicle v = myVW;

            v.Drive();
            v = myFlight;
            v.Drive();
        }
示例#8
0
        static void Entrance()
        {
            Console.WriteLine("Journey by airplane");
            Airplane myPlane = new Airplane();

            myPlane.StartEngine("Contact");
            myPlane.TakeOff();
            myPlane.Drive();
            myPlane.Land();
            myPlane.StopEngine("Whirr");

            Console.WriteLine("\nJourney by car");
            Car myCar = new Car();

            myCar.StartEngine("Brm brm");
            myCar.Accelerate();
            myCar.Drive();
            myCar.Brake();
            myCar.StopEngine("Phut phut");

            Console.WriteLine("\nTesting polymorphism");
            Vehicle v = myCar;

            v.Drive();
            v = myPlane;
            v.Drive();
        }
示例#9
0
        static void doWork()
        {
            Console.WriteLine("This is the Vehicles Lab.");
            Console.WriteLine("==============================================================");
            Console.WriteLine("Journey by airplane:");
            Airplane myPlane = new Airplane();

            myPlane.StartEngine("Contact");
            myPlane.TakeOff();
            myPlane.Drive();
            myPlane.Land();
            myPlane.StopEngine("Whirr");
            Console.WriteLine("==============================================================");
            Console.WriteLine("Journey by car:");
            Car myCar = new Car();

            myCar.StartEngine("Brm brm");
            myCar.Accelerate();
            myCar.Drive();
            myCar.Brake();
            myCar.StopEngine("Phut phut");
            Console.WriteLine("==============================================================");
            Console.WriteLine("Journey by truck:");
            Truck tyra = new Truck();

            tyra.StartEngine("Vroom Vroom");
            tyra.Haul();
            tyra.Drive();
            tyra.Tows();
            tyra.StopEngine("Klunk Klunk");
            Console.WriteLine("==============================================================");
            Console.WriteLine("Journey by boat:");
            Boat Titantic = new Boat();

            Titantic.StartEngine("Swish Swish");
            Titantic.Sail();
            Titantic.Drive();
            Titantic.Floats();
            Titantic.StopEngine("Glug Glug");
            Console.WriteLine("==============================================================");
            Console.WriteLine("Testing polymorphism");
            Vehicle v = myCar;

            v.Drive();
            v = myPlane;
            v.Drive();
            v = tyra;
            v.Drive();
            Console.WriteLine("==============================================================");
        }
示例#10
0
        static void doWork()
        {
            Console.WriteLine("This is the vehicles lab.");
            Console.WriteLine("Journey by airplane:");
            Airplane myPlane = new Airplane();

            myPlane.StartEngine("Contact");
            myPlane.TakeOff();
            myPlane.Drive();
            myPlane.Land();
            myPlane.StopEngine("Whirr");
            Console.WriteLine();
            Console.WriteLine("=======================================");
            Console.WriteLine("Journey by car:");
            Car myCar = new Car();

            myCar.StartEngine("Brm brm");
            myCar.Accelerate();
            myCar.Drive();
            myCar.Brake();
            myCar.StopEngine("Phut phut");
            Console.WriteLine("=======================================");
            Console.WriteLine("Journey by truck:");
            Truck steven = new Truck();

            steven.StartEngine("Diesel Clatter");
            steven.Accelerate();
            steven.Drive();
            steven.Brake();
            steven.StopEngine("Clunk Clunk");
            Console.WriteLine("=======================================");
            Console.WriteLine("Journey by boat:");
            Boat titanic = new Boat();

            titanic.StartEngine("Vroom Vroom");
            titanic.Accelerate();
            titanic.Drive();
            titanic.Brake();
            titanic.StopEngine("Glug Glug");
            Console.WriteLine("=======================================");
            Console.WriteLine("\nTesting polymorphism");
            Vehicle v = myCar;

            v.Drive();
            v = myPlane;
            v.Drive();
            v = steven;
            steven.Drive();
            Console.WriteLine("=======================================");
        }
示例#11
0
        static void doWork()
        {
            Console.WriteLine("This is lab Vehicles");
            Console.WriteLine("Journey by airplane:");
            Airplane myPlane = new Airplane();

            myPlane.StartEngine("Contact");
            myPlane.TakeOff();
            myPlane.Drive();
            myPlane.Land();
            myPlane.StopEngine("Whirr");
            Console.WriteLine();
            Console.WriteLine("Journey by car:");
            Car myCar = new Car();

            myCar.StartEngine("Brm brm");
            myCar.Accelerate();
            myCar.Drive();
            myCar.Brake();
            myCar.StopEngine("Phut phut");
            Console.WriteLine("Journey by Motorcycle");
            Console.WriteLine();
            Motorcycle myMotorcycle = new Motorcycle();

            myMotorcycle.StartEngine("Motorcycle noises");
            myMotorcycle.Accelerate();
            myMotorcycle.Drive();
            myMotorcycle.Brake();
            myMotorcycle.StopEngine("No Motorcycle noises");
            Console.WriteLine();
            Console.WriteLine("Journey by Boat");
            Boat Titanic = new Boat();

            Titanic.StartEngine("Glug Glug");
            Titanic.Sail();
            Titanic.Drive();
            Titanic.Floats();
            Titanic.StopEngine("Sinking Noises");

            Console.WriteLine("\nTesting polymorphism");
            Vehicle v = myCar;

            v.Drive();
            v = myPlane;
            v.Drive();
            v = myMotorcycle;
            v.Drive();
        }
示例#12
0
        private static void ExecuteCommand(Vehicle vehicle, string command, double value)
        {
            switch (command)
            {
            case "Drive":
                Console.WriteLine(vehicle.Drive(value));
                break;

            case "Refuel":
                try
                {
                    vehicle.Refuel(value);
                }
                catch (ArgumentException e)
                {
                    Console.WriteLine(e.Message);
                }

                break;

            case "DriveEmpty":
                var bus = vehicle as Bus;
                Console.WriteLine(bus.DriveEmpty(value));
                break;
            }
        }
        private static void ParseCommand(Vehicle car, Vehicle truck)
        {
            string[] commandArgs    = Console.ReadLine().Split(' ', StringSplitOptions.RemoveEmptyEntries).ToArray();
            string   command        = commandArgs[0];
            string   vehicleType    = commandArgs[1];
            double   thirdParameter = double.Parse(commandArgs[2]);

            if (command == "Drive")
            {
                if (vehicleType == "Car")
                {
                    car.Drive(thirdParameter);
                    Console.WriteLine($"Car travelled {thirdParameter} km");
                }
                else if (vehicleType == "Truck")
                {
                    truck.Drive(thirdParameter);
                    Console.WriteLine($"Truck travelled {thirdParameter} km");
                }
            }
            else if (command == "Refuel")
            {
                if (vehicleType == "Car")
                {
                    car.Refuel(thirdParameter);
                }
                else if (vehicleType == "Truck")
                {
                    truck.Refuel(thirdParameter);
                }
            }
        }
示例#14
0
 private static void VehicleAction(string[] cmdArgs, Vehicle vehicle)
 {
     if (cmdArgs[0] == "Drive")
     {
         Console.WriteLine(vehicle.Drive(double.Parse(cmdArgs[2]), vehicle.AcFuelIncrease));
     }
     else if (cmdArgs[0] == "Refuel")
     {
         vehicle.Refuel(double.Parse(cmdArgs[2]));
     }
     else if (cmdArgs[0] == "DriveEmpty")
     {
         vehicle.IsAcTurnedOn = false;
         Console.WriteLine(vehicle.Drive(double.Parse(cmdArgs[2]), vehicle.AcFuelIncrease));
     }
 }
示例#15
0
 private static void DoTheAction(Vehicle vehicle, string action, string vecihleType, double amount)
 {
     if (action == "DriveEmpty")
     {
         vehicle.IsEmpty = true;
         Console.WriteLine(vehicle.Drive(amount));
     }
     else if (action == "Drive")
     {
         Console.WriteLine(vehicle.Drive(amount));
     }
     else
     {
         vehicle.Refuel(amount);
     }
 }
示例#16
0
        static void doWork()
        {
            Console.WriteLine("Test vehicle");
            Vehicle v = new Vehicle();

            v.StartEngine("RUM RUM");
            v.Drive();
            v.StopEngine("GIN GIN");
            Console.WriteLine("------------------------------------");
            Console.WriteLine("Journey by airplane:");
            Airplane myPlane = new Airplane();

            myPlane.StartEngine("Contact");
            myPlane.TakeOff();
            myPlane.Drive(); // prints "Flying" from Car class from overloaded method in Derived class Airplane.
            myPlane.Land();
            myPlane.StopEngine("Whirr");
            Console.WriteLine("------------------------------------");

            Console.WriteLine("Journey by car:");
            Car Car1 = new Car();

            Car1.StartEngine("Brm brm");
            Car1.Accelerate();
            Car1.Drive(); // prints Motoring"
            Car1.Brake();
            Car1.StopEngine("Phut phut");
            Console.WriteLine("-------------------------------------");
            Console.WriteLine("\nTesting polymorphism");
            Vehicle w = new Vehicle();

            w.Drive();
            w = Car1;
            w.Drive();
            w = myPlane;
            w.Drive();

            Console.WriteLine("-------------------------------------");
            Console.WriteLine("Journey by motorcycle");
            Motorcycle mc = new Motorcycle();

            mc.StartEngine("Voom Voom");
            mc.Accelerate();
            mc.Drive();
            mc.Brake();
            mc.StopEngine("Klunk Klunk");
        }
示例#17
0
        static void doWork()
        {
            Console.WriteLine("This is Vehicles Lab");
            Console.WriteLine("======================================================================================");

            Console.WriteLine("Journey by airplane");
            Airplane myPlane = new Airplane();

            myPlane.StartEngine("contact");
            myPlane.TakeOff();
            myPlane.Drive();
            myPlane.Land();
            myPlane.StopEngine("Whirr");

            Console.WriteLine("======================================================================================");
            Console.WriteLine("Journey by car:");
            Car myCar = new Car();

            myCar.StartEngine("Brm brm");
            myCar.Accelerate();
            myCar.Drive();
            myCar.Brake();
            myCar.StopEngine("Phut phut");

            Console.WriteLine("======================================================================================");

            Console.WriteLine("Testing polymorphism");
            Vehicle v = myCar;

            v.Drive();
            v = myPlane;
            v.Drive();

            Console.WriteLine("======================================================================================");

            SpaceShip challenger = new SpaceShip();

            challenger.StartEngine("boooom");
            challenger.TakeOff();
            challenger.Drive();
            challenger.Fire();
            challenger.Land();
            challenger.StopEngine("ssssssssssss");
        }
示例#18
0
        static void Main(string[] args)
        {
            List <Vehicle> vehicles = new List <Vehicle>();

            for (int i = 0; i < 3; i++)
            {
                string[] cmdArgs      = Console.ReadLine().Split();
                string   type         = cmdArgs[0];
                double   liters       = double.Parse(cmdArgs[1]);
                double   consumption  = double.Parse(cmdArgs[2]);
                double   tankCapacity = double.Parse(cmdArgs[3]);

                Vehicle vehicle;
                if (type == "Car")
                {
                    vehicle = new Car(liters, consumption, tankCapacity);
                }
                else if (type == "Truck")
                {
                    vehicle = new Truck(liters, consumption, tankCapacity);
                }
                else
                {
                    vehicle = new Bus(liters, consumption, tankCapacity);
                }

                vehicles.Add(vehicle);
            }


            int n = int.Parse(Console.ReadLine());

            for (int i = 0; i < n; i++)
            {
                string[] cmdArgs  = Console.ReadLine().Split();
                string   command  = cmdArgs[0];
                string   type     = cmdArgs[1];
                double   argument = double.Parse(cmdArgs[2]);

                Vehicle vehicle = vehicles.FirstOrDefault(v => v.GetType().Name == type);
                if (command == "Drive")
                {
                    vehicle.Drive(argument);
                }
                else if (command == "DriveEmpty")
                {
                    ((Bus)vehicle).DriveEmpty(argument);
                }
                else
                {
                    vehicle.Refuel(argument);
                }
            }

            vehicles.ForEach(v => Console.WriteLine(v));
        }
示例#19
0
        private static void ProcessCommand(Vehicle vehicle, string action, double parameter)
        {
            if (action == "Drive")
            {
                vehicle.Drive(parameter);
            }
            else if (action == "Refuel")
            {
                vehicle.Refueling(parameter);
            }
            else if (action == "DriveEmpty")
            {
                ((Bus)vehicle).TurnOffAirConditioner();

                vehicle.Drive(parameter);

                ((Bus)vehicle).TurnOnAirConditioner();
            }
        }
示例#20
0
        static void DriveVehicle(Vehicle vehicle, double value)
        {
            bool canTravell = vehicle.Drive(value);

            string result =
                !canTravell
                ? $"{vehicle.GetType().Name} needs refueling"
                : $"{vehicle.GetType().Name} travelled {value} km";

            Console.WriteLine(result);
        }
示例#21
0
 private static void driveOrRefuel(string action, string litersOrDistance, Vehicle vehicle)
 {
     if (action == "Drive")
     {
         Console.WriteLine(vehicle.Drive(double.Parse(litersOrDistance)));
     }
     else
     {
         vehicle.Refuel(double.Parse(litersOrDistance));
     }
 }
示例#22
0
 public static void ImplementationCommand(Vehicle vehicle, string action, double value)
 {
     if (action == "Drive")
     {
         Console.WriteLine(vehicle.Drive(value));
     }
     else if (action == "Refuel")
     {
         vehicle.Refuel(value);
     }
 }
示例#23
0
 static void Action(Vehicle vehicle, string command, double distanceOrFuel)
 {
     if (command == "Drive")
     {
         Print(vehicle.Drive(distanceOrFuel));
     }
     else
     {
         vehicle.Refuel(distanceOrFuel);
     }
 }
示例#24
0
 private static void ExecuteCommand(Vehicle vehicle, string command, double amount)
 {
     if (command == "Drive")
     {
         Console.WriteLine(vehicle.Drive(amount));
     }
     else if (command == "Refuel")
     {
         vehicle.Refuel(amount);
     }
 }
        static void DriveVehicle(Vehicle vehicle, double value)
        {
            bool canTravel = vehicle.Drive(value);

            string result = !canTravel
                ? $"{vehicle.GetType().Name} needs refueling"
                : $"{vehicle.GetType().Name} travelled {value} km";

            Console.WriteLine(result);
            //if travelledDistance is 0, stringresult is "needs refueling", else -the second message
        }
示例#26
0
 static void Operate(Vehicle vehicle, string operation, double amaunt)
 {
     if (operation == "Drive")
     {
         vehicle.Drive(amaunt);
     }
     else if (operation == "Refuel")
     {
         vehicle.Refuel(amaunt);
     }
 }
示例#27
0
        public static void Main(string[] args)
        {
            Vehicle car   = CreateVehicle();
            Vehicle truck = CreateVehicle();

            int n = int.Parse(Console.ReadLine());

            for (int i = 0; i < n; i++)
            {
                string[] inputData = Console.ReadLine().Split().ToArray();

                string command     = inputData[0];
                string vehicleType = inputData[1];

                if (command == "Drive")
                {
                    double distance = double.Parse(inputData[2]);
                    try
                    {
                        if (vehicleType == nameof(Car))
                        {
                            car.Drive(distance);
                        }
                        else if (vehicleType == nameof(Truck))
                        {
                            truck.Drive(distance);
                        }

                        Console.WriteLine($"{vehicleType} travelled {distance} km");
                    }
                    catch (InvalidOperationException ex)
                    {
                        Console.WriteLine(ex.Message);
                    }
                }
                else if (command == "Refuel")
                {
                    double amount = double.Parse(inputData[2]);

                    if (vehicleType == nameof(Car))
                    {
                        car.Refuel(amount);
                    }
                    else if (vehicleType == nameof(Truck))
                    {
                        truck.Refuel(amount);
                    }
                }
            }

            Console.WriteLine(car);
            Console.WriteLine(truck);
        }
示例#28
0
        private static void ExecuteCommand(Vehicle vehicle, string command, double value)
        {
            switch (command)
            {
            case "Drive":
                Console.WriteLine(vehicle.Drive(value));
                break;

            case "Refuel":
                vehicle.Refuel(value);
                break;
            }
        }
示例#29
0
        private static void ProcessCommand(Vehicle vehicle, string command, double parameter)
        {
            if (command == "Drive")
            {
                vehicle.Drive(parameter);

                Console.WriteLine($"{vehicle.GetType().Name} travelled {parameter} km");
            }
            else if (command == "DriveEmpty")
            {
                ((Bus)vehicle).TurnOffAirCondition();

                vehicle.Drive(parameter);

                ((Bus)vehicle).TurnOnAirCondition();
                Console.WriteLine($"{vehicle.GetType().Name} travelled {parameter} km");
            }
            else
            {
                vehicle.Refuel(parameter);
            }
        }
示例#30
0
        static void Main(string[] args)
        {
            Vehicle car   = createVehicle();
            Vehicle truck = createVehicle();

            int numberOfCommands = int.Parse(Console.ReadLine());

            for (int i = 0; i < numberOfCommands; i++)
            {
                string[] commandInfo = Console.ReadLine().Split();
                string   command     = commandInfo[0];
                string   type        = commandInfo[1];
                double   parameter   = double.Parse(commandInfo[2]);

                if (command == "Drive")
                {
                    try
                    {
                        if (type == nameof(Car))
                        {
                            car.Drive(parameter);
                        }
                        else if (type == nameof(Truck))
                        {
                            truck.Drive(parameter);
                        }

                        Console.WriteLine($"{type} travelled {parameter} km");
                    }
                    catch (InvalidOperationException ex)
                    {
                        Console.WriteLine(ex.Message);
                    }
                }
                else if (command == "Refuel")
                {
                    if (type == nameof(Car))
                    {
                        car.Refuel(parameter);
                    }
                    else if (type == nameof(Truck))
                    {
                        truck.Refuel(parameter);
                    }
                }
            }

            Console.WriteLine(car.ToString());
            Console.WriteLine(truck.ToString());
        }