我如何实现速度距离时间计算器,该计算器将时间转换为分钟



我当前正在处理系统,但想在其上实现SDT计算器,请查看我的源代码并提供帮助:)浏览,但没有整个源代码,我认为这可能有点令人困惑:)

    namespace example_project
{
class Program
{
    const string A = "A";
    const string B = "B";
    const string C = "C";
    const string D = "D";
    const string E = "E";
    const string F = "F";
    const string S = "sunny";
    const string R = "raining";
    public abstract class Route
    {
        public abstract void Intro();
        public abstract void Distance();
        public abstract void SurfaceType();
    }
    public class CandyLane : Route
    {
        public override void  Intro()
        {
            Console.WriteLine("[D] Candy Lane --------");
        }
        public override void Distance()
        {
            Console.WriteLine("84 Miles to end of route");
        }
        public override void  SurfaceType()
        {
            Console.WriteLine("Smooth Surface Type");
        }
    }
    public class BostonAvenue : Route
    {
        public override void Intro()
        {
            Console.WriteLine("[E] Boston Avenue --------");
        }
        public override void Distance()
        {
            Console.WriteLine("126 Miles to end of route");
        }
        public override void SurfaceType()
        {
            Console.WriteLine("Rough Surface Type");
        }
    }
    public class DenhamVale : Route
    {
        public override void Intro()
        {
            Console.WriteLine("[F] Denham Vale --------");
        }
        public override void Distance()
        {
            Console.WriteLine("39 Miles to end of route");
        }
        public override void SurfaceType()
        {
            Console.WriteLine("Medium Surface Type");
        }
    }
    public abstract class Cars
    {
        public abstract void Speed();
        public abstract void Engine();
        public abstract void Intro();
    }
    public class Toyota : Cars
    {
        public override void Intro()
        {
            Console.WriteLine("[A] TOYOTA---------");
        }
        public override void Speed()
        {
            Console.WriteLine("Toyota Speed = 47MPH");
        }
        public override void Engine()
        {
            Console.WriteLine("Engine Type = 1.2 litre engine");
        }
    }
    public class Fiat : Cars
    {
        public override void Intro()
        {
            Console.WriteLine("[B] FIAT---------");
        }
        public override void Speed()
        {
            Console.WriteLine("Fiat Speed = 76MPH");
        }
        public override void Engine()
        {
            Console.WriteLine("Engine = 1.3 litre engine");
        }
    }
    public class Honda : Cars
    {
        public override void Intro()
        {
            Console.WriteLine("[C] HONDA---------");
        }
        public override void Speed()
        {
            Console.WriteLine("Honda Speed = 94MPH");
        }
        public override void Engine()
        {
            Console.WriteLine("Engine = 1.3 litre engine");
        }
        public static void Main()
        {
            Console.WriteLine("Welcome To My Program");
            Console.WriteLine("Please See List and pick a car for your journey: ");
            Toyota t = new Toyota();
            t.Intro();
            t.Speed();
            t.Engine();
            Fiat f = new Fiat();
            f.Intro();
            f.Speed();
            f.Engine();
            Honda h = new Honda();
            h.Intro();
            h.Speed();
            h.Engine();
            string input;
            input = Console.ReadLine();
            if (string.Equals(A, input, StringComparison.CurrentCultureIgnoreCase))
            {
                string input2;
                Console.WriteLine("You have chosen to drive the toyota." + Environment.NewLine + "Please pick a route: ");
                List<Route> Routes = new List<Route>();
                Routes.Add(new CandyLane());
                Routes.Add(new BostonAvenue());
                Routes.Add(new DenhamVale());
                foreach (Route Route in Routes)
                {
                    Route.Intro();
                    Route.Distance();
                    Route.SurfaceType();
                }

                input2 = Console.ReadLine();
                if (string.Equals(D, input2, StringComparison.CurrentCultureIgnoreCase))
                {
                    string input3;
                    Console.WriteLine("You have chosen: Candy Lane"+Environment.NewLine+"Is it raining or sunny?");
                    input3 = Console.ReadLine();
                    if (string.Equals(R, input3, StringComparison.CurrentCultureIgnoreCase))
                    {
                        Console.WriteLine("You have chosen Raining. + 10 minutes...");
                    }
                }
                else if (string.Equals(E, input2, StringComparison.CurrentCultureIgnoreCase))
                {
                    Console.WriteLine("You have chosen: Boston Avenue" + Environment.NewLine + "Is it raining or sunny?");
                }
                else if (string.Equals(F, input2, StringComparison.CurrentCultureIgnoreCase))
                {
                    Console.WriteLine("You have chosen: Denham Vale" + Environment.NewLine + "Is it raining or sunny?");
                }
                else
                {
                    Console.WriteLine("This Route Doesnt Exsist");
                }
            }
            else if (string.Equals(B, input, StringComparison.CurrentCultureIgnoreCase))   
            {
                string input2;
                Console.WriteLine("You have chosen to drive the Fiat." + Environment.NewLine + "Please pick a route: ");
                List<Route> Routes = new List<Route>();
                Routes.Add(new CandyLane());
                Routes.Add(new BostonAvenue());
                Routes.Add(new DenhamVale());
                foreach (Route Route in Routes)
                {
                    Route.Intro();
                    Route.Distance();
                    Route.SurfaceType();
                }

                input2 = Console.ReadLine();
                if (string.Equals(D, input2, StringComparison.CurrentCultureIgnoreCase))
                {
                    Console.WriteLine("You have chosen: Candy Lane"+Environment.NewLine+"Is it raining or sunny?");
                }
            }
            else if (string.Equals(C, input, StringComparison.CurrentCultureIgnoreCase))
            {
                string input2;
                Console.WriteLine("You have chosen to drive the Honda." + Environment.NewLine + "Please pick a route: ");
                List<Route> Routes = new List<Route>();
                Routes.Add(new CandyLane());
                Routes.Add(new BostonAvenue());
                Routes.Add(new DenhamVale());
                foreach (Route Route in Routes)
                {
                    Route.Intro();
                    Route.Distance();
                    Route.SurfaceType();
                }

                input2 = Console.ReadLine();
                if (string.Equals(D, input2, StringComparison.CurrentCultureIgnoreCase))
                {
                    Console.WriteLine("You have chosen: Candy Lane" + Environment.NewLine + "Is it raining or sunny?");
                }
            }
        }

    }
}

}

首先将字段暴露于每个类(例如DemanginMiles(oute)&amp;速度(汽车)并能够计算。在实现此简单方法之后,您也可以使用属性。方法计算 ->英里/mph * 60(将值的价值获取到几分钟而不是小时)。

using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Web;
using System.Xml.Linq;
namespace StackOverflow
{
    class Program
    {
        const string A = "A";
        const string B = "B";
        const string C = "C";
        const string D = "D";
        const string E = "E";
        const string F = "F";
        const string S = "sunny";
        const string R = "raining";
        public abstract class Route
        {
            public abstract void Intro();
            public abstract void Distance();
            public abstract void SurfaceType();
        }
        public class CandyLane : Route
        {
            public double DistanceInMiles = 84;
            public override void Intro()
            {
                Console.WriteLine("[D] Candy Lane --------");
            }
            public override void Distance()
            {
                Console.WriteLine("84 Miles to end of route");
            }
            public override void SurfaceType()
            {
                Console.WriteLine("Smooth Surface Type");
            }
        }
        public class BostonAvenue : Route
        {
            public double DistanceInMiles = 126;
            public override void Intro()
            {
                Console.WriteLine("[E] Boston Avenue --------");
            }
            public override void Distance()
            {
                Console.WriteLine("126 Miles to end of route");
            }
            public override void SurfaceType()
            {
                Console.WriteLine("Rough Surface Type");
            }
        }
        public class DenhamVale : Route
        {
            public  double DistanceInMiles = 39;
            public override void Intro()
            {
                Console.WriteLine("[F] Denham Vale --------");
            }
            public override void Distance()
            {
                Console.WriteLine("39 Miles to end of route");
            }
            public override void SurfaceType()
            {
                Console.WriteLine("Medium Surface Type");
            }
        }
        public abstract class Cars
        {
            public abstract void Speed();
            public abstract void Engine();
            public abstract void Intro();
        }
        public class Toyota : Cars
        {
            public double SpeedMph = 47;
            public override void Intro()
            {
                Console.WriteLine("[A] TOYOTA---------");
            }
            public override void Speed()
            {
                Console.WriteLine("Toyota Speed = 47MPH");
            }
            public override void Engine()
            {
                Console.WriteLine("Engine Type = 1.2 litre engine");
            }
        }
        public class Fiat : Cars
        {
            public double SpeedMph = 76;
            public override void Intro()
            {
                Console.WriteLine("[B] FIAT---------");
            }
            public override void Speed()
            {
                Console.WriteLine("Fiat  Speed = 76MPH");
            }
            public override void Engine()
            {
                Console.WriteLine("Engine = 1.3 litre engine");
            }
        }
        public class Honda : Cars
        {
            public double SpeedMph = 94;
            public override void Intro()
            {
                Console.WriteLine("[C] HONDA---------");
            }
            public override void Speed()
            {
                Console.WriteLine("Honda Speed = 94MPH");
            }
            public override void Engine()
            {
                Console.WriteLine("Engine = 1.3 litre engine");
            }
            public static void Main()
            {
                // TESTING THE METHOD
                var toyota = new  Toyota();
                var demhamVal = new DenhamVale();
                CalulateSdt(demhamVal.DistanceInMiles, toyota.SpeedMph);
                Console.WriteLine("Welcome To My Program");
                Console.WriteLine("Please See List and pick a car for your journey: ");
                Toyota t = new Toyota();
                t.Intro();
                t.Speed();
                t.Engine();
                Fiat f = new Fiat();
                f.Intro();
                f.Speed();
                f.Engine();
                Honda h = new Honda();
                h.Intro();
                h.Speed();
                h.Engine();
                string input;
                input = Console.ReadLine();

                if (string.Equals(A, input, StringComparison.CurrentCultureIgnoreCase))
                {
                    string input2;
                    Console.WriteLine("You have chosen to drive the toyota." + Environment.NewLine + "Please pick a route: ");
                    List<Route> Routes = new List<Route>();
                    Routes.Add(new CandyLane());
                    Routes.Add(new BostonAvenue());
                    Routes.Add(new DenhamVale());
                    foreach (Route Route in Routes)
                    {
                        Route.Intro();
                        Route.Distance();
                        Route.SurfaceType();
                    }

                    input2 = Console.ReadLine();
                    if (string.Equals(D, input2, StringComparison.CurrentCultureIgnoreCase))
                    {
                        string input3;
                        Console.WriteLine("You have chosen: Candy Lane" + Environment.NewLine + "Is it raining or sunny?");
                        input3 = Console.ReadLine();
                        if (string.Equals(R, input3, StringComparison.CurrentCultureIgnoreCase))
                        {
                            Console.WriteLine("You have chosen Raining. + 10 minutes...");
                        }
                    }
                    else if (string.Equals(E, input2, StringComparison.CurrentCultureIgnoreCase))
                    {
                        Console.WriteLine("You have chosen: Boston Avenue" + Environment.NewLine + "Is it raining or sunny?");
                    }
                    else if (string.Equals(F, input2, StringComparison.CurrentCultureIgnoreCase))
                    {
                        Console.WriteLine("You have chosen: Denham Vale" + Environment.NewLine + "Is it raining or sunny?");
                    }
                    else
                    {
                        Console.WriteLine("This Route Doesnt Exsist");
                    }
                }
                else if (string.Equals(B, input, StringComparison.CurrentCultureIgnoreCase))
                {
                    string input2;
                    Console.WriteLine("You have chosen to drive the Fiat." + Environment.NewLine + "Please pick a route: ");
                    List<Route> Routes = new List<Route>();
                    Routes.Add(new CandyLane());
                    Routes.Add(new BostonAvenue());
                    Routes.Add(new DenhamVale());
                    foreach (Route Route in Routes)
                    {
                        Route.Intro();
                        Route.Distance();
                        Route.SurfaceType();
                    }

                    input2 = Console.ReadLine();
                    if (string.Equals(D, input2, StringComparison.CurrentCultureIgnoreCase))
                    {
                        Console.WriteLine("You have chosen: Candy Lane" + Environment.NewLine + "Is it raining or sunny?");
                    }
                }
                else if (string.Equals(C, input, StringComparison.CurrentCultureIgnoreCase))
                {
                    string input2;
                    Console.WriteLine("You have chosen to drive the Honda." + Environment.NewLine + "Please pick a route: ");
                    List<Route> Routes = new List<Route>();
                    Routes.Add(new CandyLane());
                    Routes.Add(new BostonAvenue());
                    Routes.Add(new DenhamVale());
                    foreach (Route Route in Routes)
                    {
                        Route.Intro();
                        Route.Distance();
                        Route.SurfaceType();
                    }

                    input2 = Console.ReadLine();
                    if (string.Equals(D, input2, StringComparison.CurrentCultureIgnoreCase))
                    {
                        Console.WriteLine("You have chosen: Candy Lane" + Environment.NewLine + "Is it raining or sunny?");
                    }
                }
            }

        }
        /*
            To find a time, we need to divide distance by speed. 
            Chris cycles at an average speed of 8 mph. If he cycles for 6½ hours, 
            how far does he travel? To find a distance, we need to multiply speed by time. (http://www.cimt.org.uk/siteinfo/plymouth404.htm)
        */
        public static void CalulateSdt(double distanceInMiles, double speedMph)
        {
            var sdt = distanceInMiles/speedMph;
            sdt = sdt*60;
            Console.WriteLine($"Speed Distance Time : {sdt} minutes");
            Console.WriteLine();
        }
    }
}

最新更新