static void Main(string[] args)
        {
            Console.WriteLine("Press enter to begin");

            String restart = Console.ReadLine();

            do
            {
                try
                {
                    //Class to convert user input
                    InputConverter inputConverter = new InputConverter();

                    //Class to perform actual calculations
                    CalculatorEngine calculatorEngine = new CalculatorEngine();

                    Console.WriteLine("Please enter the first number:");
                    double firstNumber = inputConverter.ConvertInputToNumeric(Console.ReadLine());
                    while (double.IsNaN(firstNumber))
                    {
                        firstNumber = inputConverter.ConvertInputToNumeric(Console.ReadLine());
                    }

                    Console.WriteLine("Please enter the second number:");
                    double secondNumber = inputConverter.ConvertInputToNumeric(Console.ReadLine());
                    while (double.IsNaN(secondNumber))
                    {
                        secondNumber = inputConverter.ConvertInputToNumeric(Console.ReadLine());
                    }

                    Console.WriteLine("Please enter the operator:");
                    string operation = Console.ReadLine();

                    double result = calculatorEngine.Calculate(operation, firstNumber, secondNumber);
                    while (double.IsNaN(result))
                    {
                        Console.WriteLine("Invalid operator \nPlease utilize one of the following: \nadd subtract multiply divide + - * / \n");
                        operation = Console.ReadLine();
                        result    = calculatorEngine.Calculate(operation, firstNumber, secondNumber);
                    }

                    Console.WriteLine("The value " + String.Format("{0:.00}", firstNumber) + " " + operation + " " + String.Format("{0:.00}", secondNumber) + " is equal to " + String.Format("{0:.00}", result));
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex.Message);
                }
                Console.WriteLine("Would you like to restart application. if yes, write 'yes'");
                restart = Console.ReadLine();
            } while (restart == "yes");
            System.Environment.Exit(0);
        }
예제 #2
0
        static void Main(string[] args)
        {
            InputConverter   Converter  = new InputConverter();
            CalculatorEngine Calculator = new CalculatorEngine();


            try
            {
                double firstNumber  = Converter.ConvertInputToNumeric(Console.ReadLine());
                double secondNumber = Converter.ConvertInputToNumeric(Console.ReadLine());
                string operation    = Console.ReadLine();

                //TODO: Refactoring Method converting string for enum because if the string is invalid enumApp the app throw error parse
                double result = Calculator.Calculate((CalcOperations)Enum.Parse(typeof(CalcOperations), operation), firstNumber, secondNumber);

                Console.WriteLine(result);
            }
            catch (ArgumentException ex)
            {
                //TDOO: START LOGGING EXCEPTIONS
                Console.WriteLine(ex.Message);
            }
            catch (InvalidOperationException ex)
            {
                //TDOO: START LOGGING EXCEPTIONS
                Console.WriteLine(ex.Message);
            }
            catch (Exception ex)
            {
                //TDOO: START LOGGING EXCEPTIONS
                Console.WriteLine(ex.Message);
            }
        }
예제 #3
0
        static void Main(string[] args)
        {
            try
            {
                //take user input and convert it from string to numerical
                InputConverter inputConverter = new InputConverter();
                //some type of calculator engine that will do the calc
                CalculatorEngine calculatorEngine = new CalculatorEngine();

                //get two input numbers
                double firstNumber  = inputConverter.ConvertInputToNumeric(Console.ReadLine());
                double secondNumber = inputConverter.ConvertInputToNumeric(Console.ReadLine());
                string operation    = Console.ReadLine();

                //get the result
                double result = calculatorEngine.Calculate(operation, firstNumber, secondNumber);

                Console.WriteLine(result);
            }
            catch (Exception ex)
            {
                //in real world we would want to log this exception
                Console.WriteLine(ex.Message);
            }
        }
예제 #4
0
        static void Main(string[] args)
        {
            try
            {
                InputConverter   inputConverter   = new InputConverter();
                CalculatorEngine calculatorEngine = new CalculatorEngine();

                Console.Write("Please Enter First Number: ");
                double firstNumber = inputConverter.ConvertInputToNumeric(Console.ReadLine());
                Console.Write("Please Enter First Number: ");
                double secondNumber = inputConverter.ConvertInputToNumeric(Console.ReadLine());
                Console.WriteLine("Please Enter Operation: ");
                Console.WriteLine("Follow the prefix for operation: (+) or (add), (-) or (subtract), (*) or (multiply) and (/) or (divide) ");
                string operation = Console.ReadLine();

                double result = calculatorEngine.Calculate(operation, firstNumber, secondNumber);
                Console.WriteLine(result);
            }
            catch (Exception ex)
            {
                //In real world we would want to log this message.
                Console.WriteLine(ex.Message);
            }

            Console.ReadLine();
        }
예제 #5
0
        static void Main(string[] args)
        {
            try
            {
                InputConverter   inputConverter   = new InputConverter();
                CalculatorEngine calculatorEngine = new CalculatorEngine();

                Console.WriteLine("Input first number for calculation");
                double firstnumber = inputConverter.InputToNum(Console.ReadLine());

                Console.WriteLine("+, -, *, /");
                string operation = Console.ReadLine();

                Console.WriteLine("Input second number for calculation");
                double secondnumber = inputConverter.InputToNum(Console.ReadLine());

                double result = calculatorEngine.Calculate(operation, firstnumber, secondnumber);

                Console.WriteLine(result);
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
        }
        static void Main(string[] args)
        {
            Console.WriteLine("This program is a console calculator");
            Console.WriteLine("The program takes in 2 numbers and an operator");
            Console.WriteLine("Please enter the numbers and operator to calculate the result...");
            try
            {
                //Class to convert user input
                InputConverter inputConverter = new InputConverter();

                //Class to perform actual calculations
                CalculatorEngine calculatorEngine = new CalculatorEngine();

                double firstNumber  = inputConverter.ConvertInputToNumeric(Console.ReadLine());
                double secondNumber = inputConverter.ConvertInputToNumeric(Console.ReadLine());
                string operation    = Console.ReadLine();

                double result = calculatorEngine.Calculate(operation, firstNumber, secondNumber);

                Console.WriteLine(firstNumber + operation + secondNumber + " = " + result);
                Console.WriteLine("Closing Calculator");
            } catch (System.ArgumentException e)
            {
                Console.WriteLine("Please enter a number");
            }

            catch (System.InvalidOperationException e)
            {
                Console.WriteLine("Please enter a valid operator such as +,-,*,/ or write it out.");
            }
        }
예제 #7
0
        static void Main(string[] args)
        {
            try
            {
                InputConverter   inputConverter   = new InputConverter(); // convert string to number
                CalculatorEngine calculatorEngine = new CalculatorEngine();

                Console.WriteLine("Please enter the first number of your calculation.");
                double firstNumber = inputConverter.ConvertInputToNumeric(Console.ReadLine());

                Console.WriteLine("Please enter the second number of your calculation.");
                double secondNumber = inputConverter.ConvertInputToNumeric(Console.ReadLine());

                Console.WriteLine("Please enter: Add(+), Subtract(-), Multiply(*), or Divide(/)");
                string operation = Console.ReadLine();

                double result = calculatorEngine.Calculate(operation, firstNumber, secondNumber);
                Console.Write("The result is: ");
                Console.WriteLine(result);
            }
            catch (Exception e)
            {
                // we would normally log this message
                Console.WriteLine(e.Message);
            }
        }
예제 #8
0
        static void Main(string[] args)
        {
            try
            {
                InputConverter   inputConverter   = new InputConverter();
                CalculatorEngine calculatorEngine = new CalculatorEngine();

                Console.WriteLine("Please input the first number");
                double firstNumber = inputConverter.ConvertInputToNumeric(Console.ReadLine());
                Console.WriteLine("Please input the second number");
                double secondNumber = inputConverter.ConvertInputToNumeric(Console.ReadLine());
                Console.WriteLine("Please specify the operation: add(+), substract(-), multiply(*), divide(/).");
                string operation = Console.ReadLine();

                double result = calculatorEngine.Calculate(firstNumber, secondNumber, operation);

                Console.WriteLine("The result is: " + result);
            }
            catch (Exception ex)
            {
                //In real world we would want to log this msg
                //TODO: start logging exceptions
                Console.WriteLine(ex.Message);
            }
        }
예제 #9
0
        static void Main(string[] args)
        {
            try
            {
                //This is the object that is going to convert the string input to a number
                InputConverter inputConverter = new InputConverter();

                //This is the engine that will perform the calculation
                CalculatorEngine calculatorEngine = new CalculatorEngine();


                double firstNumber  = inputConverter.ConvertInputToNumeric(Console.ReadLine());
                double secondNumber = inputConverter.ConvertInputToNumeric(Console.ReadLine());
                string operation    = Console.ReadLine();

                /*result is the number after the calculation has been completed.
                 * Calculate is the method from the CalculatorEngine.
                 * This method will take the 3 inputs and output the result*/
                double result = calculatorEngine.Calculate(operation, firstNumber, secondNumber);
                Console.WriteLine(result);
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
        }
예제 #10
0
        static void Main(string[] args)
        {
            Console.WriteLine("Welcome to Fred's calculator! \nType your first number, then your second number, then an operation.");
Start:
            try
            {
                InputConverter inputConverter = new InputConverter();

                CalculatorEngine calculatorEngine = new CalculatorEngine();

                double firstNumber  = inputConverter.ConvertInputToNumeric(Console.ReadLine());
                double secondNumber = inputConverter.ConvertInputToNumeric(Console.ReadLine());
                string operation    = Console.ReadLine();

                double result = calculatorEngine.Calculate(operation, firstNumber, secondNumber);

                Console.WriteLine(result);
            }
            catch (Exception ex)
            {
                //In real world we would want to log this message
                Console.WriteLine(ex.Message);
                goto Start;
            }
            goto Start;
        }
예제 #11
0
        static void Main(string[] args)
        {
            try
            {
                //this will convert the input data to numeric
                InputConverter inputConverter = new InputConverter();

                //make an engine that calculates
                CalculatorEngine calculatorengine = new CalculatorEngine();

                Console.Write("Please enter first number: ");
                double firstNumber = inputConverter.ConvertInputToNumeric(Console.ReadLine());
                Console.Write("Please enter second number: ");
                double secondNumber = inputConverter.ConvertInputToNumeric(Console.ReadLine());
                Console.Write("Please enter operation (+,-,*,/): ");
                string operation = Console.ReadLine();

                double result = calculatorengine.Calculate(firstNumber, secondNumber, operation);

                Console.WriteLine("The result is {0}", result);
                Console.ReadKey();
            }
            catch (Exception ex)
            {
                // In real world we would want to log this message!!
                Console.WriteLine(ex.Message);
            }
        }
예제 #12
0
        static void Main(string[] args)
        {
            while (true)
            {
                try
                {
                    Console.Clear();

                    InputConverter   inputConverter   = new InputConverter();
                    CalculatorEngine calculatorEngine = new CalculatorEngine();

                    Console.WriteLine("First number:");
                    double firstNumber = inputConverter.ConvertInputToNumeric(Console.ReadLine());

                    Console.WriteLine("Second number:");
                    double secondNumber = inputConverter.ConvertInputToNumeric(Console.ReadLine());

                    Console.WriteLine("Operation:");
                    string operation = Console.ReadLine();

                    double result = calculatorEngine.Calculate(operation, firstNumber, secondNumber);

                    Console.WriteLine($"Result is: {result}");

                    Console.ReadLine();
                }
                catch (Exception e)
                {
                    Console.WriteLine(e.Message);
                    Console.ReadLine();
                    continue;
                }
            }
        }
예제 #13
0
        static void Main(string[] args)
        {
            GetNumbers       getNumbers = new GetNumbers();
            CalculatorEngine calculate  = new CalculatorEngine();
            double           result     = calculate.result;
            double           result2    = calculate.Calculate(getNumbers.argOperator, getNumbers.argFirstNumber, getNumbers.argSecondNumber);

            Console.WriteLine("{0} {1} {2} equals {3}", getNumbers.argFirstNumber, getNumbers.argOperator, getNumbers.argSecondNumber, result2);
            Console.ReadKey();
        }
예제 #14
0
        static void Main(string[] args)
        {
            InputConverter   inputConventer   = new InputConverter();
            CalculatorEngine calculatorEngine = new CalculatorEngine();

            double firstNumber  = InputConverter.ConvertInputToNumber(Console.ReadLine());
            double secondNumber = InputConverter.ConvertInputToNumber(Console.ReadLine());
            string operation    = Console.ReadLine();

            double result = calculatorEngine.Calculate(operation, firstNumber, secondNumber);

            Console.WriteLine(result);
        }
예제 #15
0
        static void Main(string[] args)
        {
            bool Decision = true;  //Variable declared for Re-executing the code from users choice

            do
            {
                try
                {
                    var inputConverter   = new InputConverter();
                    var calculatorEngine = new CalculatorEngine();
                    Console.WriteLine(@"               Operation Guide
                        1.Addition-> 'add' or '+'
                        2.Subtraction-> 'subtract' or '-'
                        3.Multiplication-> 'multiply' or '*'
                        4.Division-> 'divide' or '/'
");
                    Console.WriteLine("Enter First Number:");
                    double firstNumber = inputConverter.ConvertInputToNumber(Console.ReadLine());  //Input 1
                    Console.WriteLine("Enter Second Number:");
                    double secondNumber = inputConverter.ConvertInputToNumber(Console.ReadLine()); //Input 2
                    Console.WriteLine("Enter Operation from above specified:");
                    string operation = Console.ReadLine();                                         //Operation (+,-,*,/)
                    Console.WriteLine("----------Result----------");
                    double result = calculatorEngine.Calculate(operation, firstNumber, secondNumber);

                    Console.WriteLine(result);
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex.Message);
                }

                //For Re-executing the code from users choice
                var continueProgram = string.Empty;
                Console.WriteLine();
                do
                {
                    Console.WriteLine("Do You Want To Continue? Y/N");
                    continueProgram = (Console.ReadLine() ?? string.Empty);
                } while (!continueProgram.Equals("Y", StringComparison.OrdinalIgnoreCase) &&
                         !continueProgram.Equals("N", StringComparison.OrdinalIgnoreCase));


                Decision = continueProgram.Equals("Y", StringComparison.OrdinalIgnoreCase);
            } while (Decision);
            Console.ReadKey();
        }
예제 #16
0
        static void Main(string[] args)
        {
            InputConverter   inputConverter   = new InputConverter();
            CalculatorEngine calculatorEngine = new CalculatorEngine();

            Console.WriteLine("Please enter your first number");
            double firstNumber = inputConverter.ConvertInputToNumeric(Console.ReadLine());

            Console.WriteLine("Please enter your second number");
            double secondNumber = inputConverter.ConvertInputToNumeric(Console.ReadLine());

            Console.WriteLine("Please enter the operation");
            string operation = Console.ReadLine();

            double result = calculatorEngine.Calculate(operation, firstNumber, secondNumber);

            Console.WriteLine($"Your answer is: {result}");
        }
예제 #17
0
        static void Main(string[] args)
        {
            try
            {
                InputConverter   inputConverter   = new InputConverter();
                CalculatorEngine calculatorEngine = new CalculatorEngine();

                double firstNumber  = inputConverter.ConvertInputToNumeric(Console.ReadLine());
                double secondNumber = inputConverter.ConvertInputToNumeric(Console.ReadLine());
                string operation    = Console.ReadLine();

                double result = calculatorEngine.Calculate(firstNumber, secondNumber, operation);
                Console.WriteLine(result);
            } catch (Exception ex)
            {
                // TODO: Start logging exceptions.
                Console.WriteLine(ex.Message);
            }
        }
예제 #18
0
        static void Main(string[] args)
        {
            try
            {
                InputConverter   inputConverter   = new InputConverter();
                CalculatorEngine calculatorEngine = new CalculatorEngine();

                double firstNumber  = inputConverter.ConvertInputToNumeric(Console.ReadLine());
                double secondNumber = inputConverter.ConvertInputToNumeric(Console.ReadLine());
                string operation    = Console.ReadLine();

                double result = calculatorEngine.Calculate(operation, firstNumber, secondNumber);

                Console.WriteLine(result);
            } catch (Exception ex) {
                //in the real world, we would want to log this message.
                Console.WriteLine(ex.Message);
            }
        }
예제 #19
0
        static void Main(string[] args)
        {
            bool   continueProgram = true;
            string strRestart;

            do
            {
                try
                {
                    InputConverter   inputConverter   = new InputConverter();
                    CalculatorEngine calculatorEngine = new CalculatorEngine();

                    // Prompt for and receive equation
                    Console.Write(Constants.PromptForFirstNumber);
                    double dblNum1 = inputConverter.ConvertToNumeric(Console.ReadLine());
                    Console.Write(Constants.PromptForSecondNumber);
                    double dblNum2 = inputConverter.ConvertToNumeric(Console.ReadLine());
                    Console.Write(Constants.PromptForOperator);
                    string operation = Console.ReadLine();

                    // Call Calculate function
                    double result = calculatorEngine.Calculate(operation, dblNum1, dblNum2);

                    // Write result
                    Console.WriteLine(result);
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex.Message);
                }
                finally
                {
                    // Ask if user wants to restart program
                    do
                    {
                        Console.Write(Constants.PromptForRestartingProgram);
                        strRestart = Console.ReadLine();
                    } while (!strRestart.Equals(Constants.InputToRestartProgram, StringComparison.OrdinalIgnoreCase) && !strRestart.Equals(Constants.InputToStopProgram, StringComparison.OrdinalIgnoreCase));
                    // Set boolean based on user's input
                    continueProgram = strRestart.Equals(Constants.InputToRestartProgram, StringComparison.OrdinalIgnoreCase);
                }
            } while (continueProgram);
        }
예제 #20
0
        static void Main(string[] args)
        {
            try
            {
                InputConverter   inputConverter   = new InputConverter();
                CalculatorEngine calculatorEngine = new CalculatorEngine();

                double firstNumber  = inputConverter.ConvertInputToNumeric(Console.ReadLine());
                double secondNumber = inputConverter.ConvertInputToNumeric(Console.ReadLine());
                string operation    = Console.ReadLine();

                double result = calculatorEngine.Calculate(operation, firstNumber, secondNumber);

                Console.WriteLine(result);
            }

            catch (Exception ex)
            {
                Console.WriteLine("There was an error: {0}", ex.Message);
            }
        }
예제 #21
0
        static void Main(string[] args)
        {
            try
            {
                InputConvertor   inputConvertor   = new InputConvertor();
                CalculatorEngine calculatorEngine = new CalculatorEngine();

                double firstNumber  = inputConvertor.ConvertInputToNumeric(Console.ReadLine());
                double secondNumber = inputConvertor.ConvertInputToNumeric(Console.ReadLine());
                string operation    = Console.ReadLine();

                double result = calculatorEngine.Calculate(operation, firstNumber, secondNumber);

                Console.WriteLine(result);
            }
            catch (Exception ex)
            {
                //In real time application we log exception into log file
                Console.WriteLine(ex.Message);
            }
        }
        static void Main(string[] args)
        {
            int num = 0;
            int a   = 0;

            do
            {
                try
                {
                    if (a == 0)
                    {
                        Console.WriteLine("to exit type meme for the operator.");
                        a++;
                    }

                    //Class to convert user input
                    InputConverter inputConverter = new InputConverter();

                    //Class to perform actual calculations
                    CalculatorEngine calculatorEngine = new CalculatorEngine();

                    double firstNumber  = inputConverter.ConvertInputToNumeric(Console.ReadLine());
                    double secondNumber = inputConverter.ConvertInputToNumeric(Console.ReadLine());
                    string operation    = Console.ReadLine();
                    if (operation == "meme")
                    {
                        num = num + 5;
                    }

                    double result = calculatorEngine.Calculate(operation, firstNumber, secondNumber);

                    Console.WriteLine(result);
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex.Message);
                }
            }while (num < 1);
        }
        static void Main(string[] args)
        {
            try
            {
                //Class to convert user input
                InputConverter inputConverter = new InputConverter();

                //Class to perform actual calculations
                CalculatorEngine calculatorEngine = new CalculatorEngine();

                double firstNumber  = inputConverter.ConvertInputToNumeric(Console.ReadLine());
                double secondNumber = inputConverter.ConvertInputToNumeric(Console.ReadLine());
                string operation    = Console.ReadLine();

                double result = calculatorEngine.Calculate(operation, firstNumber, secondNumber);

                Console.WriteLine(result);
            } catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
        }
예제 #24
0
        static void Main(string[] args)
        {
            try
            {
                InputConverter   inputConverter   = new InputConverter();
                CalculatorEngine calculatorEngine = new CalculatorEngine();

                double FirstNumber  = inputConverter.ConvertInputToNumeric(Console.ReadLine());
                double SecondNumber = inputConverter.ConvertInputToNumeric(Console.ReadLine());
                string operation    = Console.ReadLine();

                double results = calculatorEngine.Calculate(operation, FirstNumber, SecondNumber);


                Console.WriteLine(results);
            }
            catch (Exception ex)
            {
                //1000: start logging
                Console.WriteLine(ex.Message);
            }
        }
예제 #25
0
        static void Main(string[] args)
        {
            try
            {
                InputConverter   inputConverter   = new InputConverter();
                CalculatorEngine calculatorEngine = new CalculatorEngine();

                double firstNumber  = inputConverter.ConvertInputToNumeric(Console.ReadLine());
                string operation    = Console.ReadLine();
                double secondNumber = inputConverter.ConvertInputToNumeric(Console.ReadLine());
                double result       = calculatorEngine.Calculate(operation, firstNumber, secondNumber);

                Console.WriteLine(result);
                Console.WriteLine("");
                Console.WriteLine("Press any key to exit the application");
                Console.ReadKey();
            }
            catch (Exception ex)
            {
                // TODO: start logging exceptions
                Console.WriteLine(ex.Message);
            }
        }
예제 #26
0
        static void Main(string[] args)
        {
            try
            {
                // Instantiating usable classes
                InputConverter   inputConverter   = new InputConverter();
                CalculatorEngine calculatorEngine = new CalculatorEngine();

                // Getting input data
                double firstNumber  = inputConverter.ConvertInputToNumeric(Console.ReadLine());
                double secondNumber = inputConverter.ConvertInputToNumeric(Console.ReadLine());
                string operation    = Console.ReadLine();

                // Calculating operation
                double result = calculatorEngine.Calculate(operation, firstNumber, secondNumber);

                // Printing result
                Console.WriteLine(result);
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
        }
        static void Main(string[] args)
        {
            try
            {
                InputConverter   inputConverter   = new InputConverter();
                CalculatorEngine calculatorEngine = new CalculatorEngine();

                Console.WriteLine("Enter first number");
                double firstNumber = inputConverter.ConvertInputToNumeric(Console.ReadLine());
                Console.WriteLine("Enter second number");
                double secondNumber = inputConverter.ConvertInputToNumeric(Console.ReadLine());
                Console.WriteLine("Enter operation to calculate");
                string operation = Console.ReadLine();

                double result = calculatorEngine.Calculate(operation, firstNumber, secondNumber);

                Console.WriteLine("Result = " + result);
            }
            catch (Exception ex)
            {
                //In real world we log the message
                Console.WriteLine("Error : " + ex.Message);
            }
        }
예제 #28
0
        static void Main(string[] args)
        {
            Console.WriteLine("Welcome to Calculator V1.05!");
            bool   EndProg    = false;
            int    numOfInput = 0;
            String choice;

            while (EndProg == false)
            {
                numOfInput++;
                if (numOfInput == 1)
                {
                    Console.WriteLine("Please make your first desired operation");
                    Console.WriteLine("Tips: #1 is the height and #2 is the base when using the triangle area calculator!");
                    Console.WriteLine("");
                }
                else
                {
                    Console.WriteLine("Number of operation: " + numOfInput);
                    Console.WriteLine("");
                }
                try
                {
                    StringBuilder sb = new StringBuilder();

                    //Class to convert user input
                    InputConverter inputConverter = new InputConverter();

                    //Class to perform actual calculations
                    CalculatorEngine calculatorEngine = new CalculatorEngine();

                    Console.WriteLine("Please enter the first number");
                    double firstNumber = inputConverter.ConvertInputToNumeric(Console.ReadLine());

                    Console.WriteLine("Please enter the second number");
                    double secondNumber = inputConverter.ConvertInputToNumeric(Console.ReadLine());

                    Console.WriteLine("Please enter your desire operation " +
                                      "\nIf you're unsure of which operation to use enter '' or 'Help'");
                    string operation = Console.ReadLine();

                    double result = calculatorEngine.Calculate(operation, firstNumber, secondNumber);

                    //Program send the table of elements to show the user all the operations available
                    if (result == 0 || operation.ToLower().Equals("help"))
                    {
                        operation = Console.ReadLine();
                    }

                    switch (operation)
                    {
                    case "add":
                    case "+":
                        operation = " plus the value ";
                        break;

                    case "substract":
                    case "-":
                        operation = " substracted by the value ";
                        break;

                    case "multiply":
                    case "*":
                        operation = " multiplied by the value ";
                        break;

                    case "divide":
                    case "/":
                        operation = " divided by the value ";
                        break;
                    }
                    //Here, if the chosen operation is the area of triangle calculator, it will display another text instead of the normal one. It is easier for the user to understand what did happen!
                    if (operation == "t")
                    {
                        sb.Append("The area of the triangle with and height (H) of " + firstNumber + " and a base (B) of " + secondNumber + " is equal to " + Math.Round(result, 2));
                    }
                    else
                    {
                        sb.Append("The value " + firstNumber + " " + operation + " " + secondNumber + " is equal to " + Math.Round(result, 2));
                    }

                    Console.WriteLine(sb.ToString());
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex.Message);
                }
                Console.WriteLine("Thank you for using Calculator V1.05!");
                Console.WriteLine("Y/N End program?");
                choice = Console.ReadLine();
                if (choice.ToLower() == "n")
                {
                    continue;
                }
                if (choice.ToLower() == "y")
                {
                    Console.WriteLine("Farewell kind user!");
                    break;
                }
                else
                {
                    Console.WriteLine("Please enter Y or N. Thank you!");
                    choice = Console.ReadLine();
                    continue;
                }
            }
        }
예제 #29
0
        static void Main(string[] args)
        {
            try
            {
                //Class to convert user input
                InputConverter inputConverter = new InputConverter();

                //Class to perform actual calculations
                CalculatorEngine calculatorEngine = new CalculatorEngine();

                bool   isDigit      = false;
                double firstNumber  = 0;
                double secondNumber = 0;

                while (!isDigit)
                {
                    Console.WriteLine("Enter your first number: ");
                    string sRes = Console.ReadLine();

                    isDigit = Double.TryParse(sRes, out firstNumber);

                    if (isDigit)
                    {
                        break;
                    }
                }
                isDigit = false;
                while (!isDigit)
                {
                    Console.WriteLine("Enter your second number: ");
                    string sRes = Console.ReadLine();

                    isDigit = Double.TryParse(sRes, out secondNumber);

                    if (isDigit)
                    {
                        break;
                    }
                }

                bool   isOperation = false;
                string operation   = " ";
                while (!isOperation)
                {
                    Console.WriteLine("Enter your desired operation out of the following: add or +, subtract or -, divide or /, multiply or * and power or ^ :");
                    operation = Console.ReadLine().ToLower();

                    isOperation = ((operation == "add") || (operation == "+") || (operation == "subtract") || (operation == "-") ||
                                   (operation == "multiply") || (operation == "*") || (operation == "divide") || (operation == "/") ||
                                   (operation == "power") || (operation == "^"));

                    if (isOperation)
                    {
                        break;
                    }
                }
                Console.WriteLine("Enter your desired operation out of the following: add or +, subtract or -, divide or /, multiply or * and power or ^ :");
                operation = Console.ReadLine().ToLower();


                double result = calculatorEngine.Calculate(operation, firstNumber, secondNumber);

                Console.WriteLine(result);
                StringBuilder sb = new StringBuilder();
                sb.Append("Your first number ");
                sb.Append(firstNumber);
                switch (operation)
                {
                case "add":
                case "+":
                    sb.Append(" plus ");
                    break;

                case "subtract":
                case "-":
                    sb.Append(" minus ");
                    break;

                case "multiply":
                case "*":
                    sb.Append(" times ");
                    break;

                case "division":
                case "/":
                    sb.Append(" divided by ");
                    break;

                case "power":
                case "^":
                    sb.Append(" to the power of ");
                    break;
                }
                sb.Append("your second number ");
                sb.Append(secondNumber);
                sb.Append(" equals to ");
                sb.Append(result);

                Console.WriteLine(sb.ToString());
                Console.ReadLine();

                System.IO.File.WriteAllText(@"C:\Users\Public\Documents\CalcResult.txt", sb.ToString());
            } catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
        }
        static void Main(string[] args)
        {
            int num = 0;
            int a = 0;
            do
                //Console.WriteLine("TEST");
                try
            {
                    if (a == 0) {
                        Console.WriteLine("to exit type meme for the operator.");
                        a++;
                    }
                    //Class to convert user input
                    InputConverter inputConverter = new InputConverter();

                //Class to perform actual calculations
                CalculatorEngine calculatorEngine = new CalculatorEngine();

                double firstNumber = inputConverter.ConvertInputToNumeric(Console.ReadLine());
                double secondNumber = inputConverter.ConvertInputToNumeric(Console.ReadLine());
                string operation = Console.ReadLine();

                    if (operation == "meme")
                    {
                        num = num + 5;
                    }

                    double result = calculatorEngine.Calculate(operation, firstNumber, secondNumber);

                string operationText;
                operationText = "empty";
                if (operation == "+")
                {
                    operationText = "plus";
                }
                if (operation == "-")
                {
                    operationText = "minus";
                }
                if (operation == "*")
                {
                    operationText = "times";
                }
                if (operation == "^")
                {
                    operationText = "exponent";
                }
                    if (operation == "/")
                {
                    operationText = "divides";
                }

                    if (result == 420 || result == 69)
                    {
                        Console.WriteLine("nice");
                    }
                    else
                    {
                        Console.WriteLine("The value" + " " + firstNumber + " " + operationText + " " + secondNumber + " " + "equals" + " " + Math.Round(result, 2));
                    }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
            while (num < 1);
        }