diff --git a/C#/Universal Science Solver and Resolver/universal-science-solver.sln b/C#/Universal Science Solver and Resolver/universal-science-solver.sln new file mode 100644 index 0000000..21326d0 --- /dev/null +++ b/C#/Universal Science Solver and Resolver/universal-science-solver.sln @@ -0,0 +1,25 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 15 +VisualStudioVersion = 15.0.28010.2016 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "universal-science-solver", "universal-science-solver\universal-science-solver.csproj", "{82BEE299-AA5E-4404-A0D4-EF328FBC0A7E}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {82BEE299-AA5E-4404-A0D4-EF328FBC0A7E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {82BEE299-AA5E-4404-A0D4-EF328FBC0A7E}.Debug|Any CPU.Build.0 = Debug|Any CPU + {82BEE299-AA5E-4404-A0D4-EF328FBC0A7E}.Release|Any CPU.ActiveCfg = Release|Any CPU + {82BEE299-AA5E-4404-A0D4-EF328FBC0A7E}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {67C8AA06-8034-47F5-99E8-89A1734D1AFD} + EndGlobalSection +EndGlobal diff --git a/C#/Universal Science Solver and Resolver/universal-science-solver/App.config b/C#/Universal Science Solver and Resolver/universal-science-solver/App.config new file mode 100644 index 0000000..731f6de --- /dev/null +++ b/C#/Universal Science Solver and Resolver/universal-science-solver/App.config @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/C#/Universal Science Solver and Resolver/universal-science-solver/Physics/PhysicsControler.cs b/C#/Universal Science Solver and Resolver/universal-science-solver/Physics/PhysicsControler.cs new file mode 100644 index 0000000..1b9dbcc --- /dev/null +++ b/C#/Universal Science Solver and Resolver/universal-science-solver/Physics/PhysicsControler.cs @@ -0,0 +1,42 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace universal_science_solver.Physics { + class PhysicsControler { + + public enum Topic : byte { + USELECTED, + BASICS, + MECHANICS, + WAVES + } + + public static IList ModeList = new List(); + + public static void Initializer() { + ModeList.Add(new Mode("Speed distance time", Topic.BASICS, "Calculate distance, speed or time")); + } + + public static IList ListModes() { + foreach (Mode mode in ModeList) { + Console.WriteLine(mode.Title); + } + return ModeList; + } + } + + class Mode { + public string Title; + public PhysicsControler.Topic Topic; + public string Desc; + + public Mode(string title, PhysicsControler.Topic topic, string desc) { + this.Title = title; + this.Topic = topic; + this.Desc = desc; + } + } +} diff --git a/C#/Universal Science Solver and Resolver/universal-science-solver/Program.cs b/C#/Universal Science Solver and Resolver/universal-science-solver/Program.cs new file mode 100644 index 0000000..230cc24 --- /dev/null +++ b/C#/Universal Science Solver and Resolver/universal-science-solver/Program.cs @@ -0,0 +1,13 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace universal_science_solver { + class Program { + static void Main(string[] args) { + UI ui = new UI(); + } + } +} diff --git a/C#/Universal Science Solver and Resolver/universal-science-solver/Properties/AssemblyInfo.cs b/C#/Universal Science Solver and Resolver/universal-science-solver/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..60ef144 --- /dev/null +++ b/C#/Universal Science Solver and Resolver/universal-science-solver/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("universal-science-solver")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("universal-science-solver")] +[assembly: AssemblyCopyright("Copyright © 2018")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("82bee299-aa5e-4404-a0d4-ef328fbc0a7e")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Build and Revision Numbers +// by using the '*' as shown below: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/C#/Universal Science Solver and Resolver/universal-science-solver/UI.cs b/C#/Universal Science Solver and Resolver/universal-science-solver/UI.cs new file mode 100644 index 0000000..3dc641e --- /dev/null +++ b/C#/Universal Science Solver and Resolver/universal-science-solver/UI.cs @@ -0,0 +1,72 @@ +using System; +using System.Threading; +using universal_science_solver.Physics; + +namespace universal_science_solver { + class UI { + public Modes Mode = Modes.UNSELECTED; + private bool isRunning = true; + + public enum Modes : byte { + UNSELECTED, + PHYSICS, + CHEMISTRY, + MATHEMATICS + } + + public UI() { + Console.WriteLine("Loading..."); + Thread.Sleep(400); + PhysicsControler.Initializer(); + boot(); + eventLoop(); + } + + private void boot() { + Console.Clear(); + Console.WriteLine("The Universal Science Solver and Resolver"); + Console.WriteLine("Copyright 2018 Benjamin Kyd, Licensed under the MIT license"); + Console.WriteLine(); + Console.WriteLine("Enter q at any point to return to the menu, Ctrl+C to exit the program at any time"); + Console.WriteLine(); + } + + private void eventLoop() { + while (isRunning) { + if (Mode == Modes.UNSELECTED) { + selectMode(); + continue; + } + + if (Mode == Modes.PHYSICS) { + + } + } + } + + private void selectMode() { + Console.WriteLine("Physics (p), chemistry (c), mathematics (m)"); + Console.Write("> "); + var key = Console.ReadKey(); + Console.WriteLine(); + + switch (key.KeyChar.ToString().ToLower()[0]) { + case 'p': + Mode = Modes.PHYSICS; + Console.WriteLine("Physics mode selected"); + break; + case 'c': + Mode = Modes.CHEMISTRY; + Console.WriteLine("Chemistry mode selected"); + break; + case 'm': + Mode = Modes.MATHEMATICS; + Console.WriteLine("Mathematics mode selected"); + break; + default: + Console.WriteLine("No mode selected"); + break; + } + } + } +} diff --git a/C#/Universal Science Solver and Resolver/universal-science-solver/Universal.cs b/C#/Universal Science Solver and Resolver/universal-science-solver/Universal.cs new file mode 100644 index 0000000..058664d --- /dev/null +++ b/C#/Universal Science Solver and Resolver/universal-science-solver/Universal.cs @@ -0,0 +1,10 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace universal_science_solver { + class Universal { + } +} diff --git a/C#/Universal Science Solver and Resolver/universal-science-solver/universal-science-solver.csproj b/C#/Universal Science Solver and Resolver/universal-science-solver/universal-science-solver.csproj new file mode 100644 index 0000000..0d670b1 --- /dev/null +++ b/C#/Universal Science Solver and Resolver/universal-science-solver/universal-science-solver.csproj @@ -0,0 +1,61 @@ + + + + + Debug + AnyCPU + {82BEE299-AA5E-4404-A0D4-EF328FBC0A7E} + Exe + universal_science_solver + universal-science-solver + v4.6.1 + 512 + true + true + + + AnyCPU + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + + + AnyCPU + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file