示例#1
0
 public ClipboardItem(FileFormat slicerFile, Operations.Operation operation, bool isFullBackup = false) : this(slicerFile)
 {
     Operation = operation;
     string description = operation.ToString();
     if (!description.StartsWith(operation.Title))
     {
         description = $"{operation.Title}: {description}";
     }
     Description  = description;
     IsFullBackup = isFullBackup;
 }
示例#2
0
        public void Run()
        {
            var fileName = _config.GetValue <string>("MarsRoverLog:LogOutputDirectory");
            var filePath = $"{Directory.GetCurrentDirectory()}\\{fileName}.txt";

            var log = new LoggerConfiguration()
                      .WriteTo.Console()
                      .WriteTo.File(filePath, rollingInterval: RollingInterval.Day)
                      .CreateLogger();

            try
            {
                var simulator = new Operations.Operation(_marse, _roverGrid, _instructionInputParser);

                var stopApplication = false;
                Console.WriteLine(description);
                do
                {
                    var command = Console.ReadLine();
                    if (command == null)
                    {
                        continue;
                    }

                    if (command.Equals("EXIT"))
                    {
                        stopApplication = true;
                        log.Information("Hey Nasa, my mission is completed. I am returning to earth");
                    }
                    else
                    {
                        try
                        {
                            var output = simulator.ProcessInstruction(command.Split(' '));
                            if (!string.IsNullOrEmpty(output))
                            {
                                Console.WriteLine(output);
                            }
                        }
                        catch (ArgumentException exception)
                        {
                            Console.WriteLine(exception.Message);
                        }
                    }
                } while (!stopApplication);
            }
            catch (Exception ex)
            {
                Log.Fatal(ex, $"Nasa, Robot is faling to send data. {ex.InnerException.Message}");
            }
            finally {
                Log.CloseAndFlush();
            }
        }
示例#3
0
        static void Main(string[] args)
        {
            Operations.Operation op = x => x > 0;
            float[] arr             = { -4, 0, 4, 3, -9, 8, 2 };
            float   sum             = Operations.Sum(arr, op);

            Console.WriteLine("sum of array is {0}", sum);

            float max = Operations.Max(arr, op);

            Console.WriteLine("max of array is {0}", max);

            float avg = Operations.Avg(arr, op);

            Console.WriteLine("avg of array is {0}", avg);

            Console.ReadLine();
        }
示例#4
0
        public void AddResultsShouldReplace()
        {
            var doc = new SimpleDTO()
            {
                StringProperty = "A"
            };

            // create patch
            JsonPatchDocument<SimpleDTO> patchDoc = new JsonPatchDocument<SimpleDTO>();
            patchDoc.Add<string>(o => o.StringProperty, "B");

            patchDoc.ApplyTo(doc);

            var s = new Operations.Operation();

            Assert.Equal("B", doc.StringProperty);
          
        }
            string BinOperation()
            {
                Console.WriteLine("\n*******************************************************************\n");
                Console.WriteLine("\nEnter the input 1 value: ");
                inputValue1 = Console.ReadLine();
                string inp = "";

                if (bin)
                {
                    number.AssignInputValue(inputValue1);
                    inp = "bin";
                }
                else if (octa)
                {
                    number.AssignInputValue(inputValue1);
                    number1 = new Binary();
                    number1.AssignInputValue(OctToBin(number));
                    number = number1;
                    inp    = "oct";
                }
                else if (hex && HexInputValidation(inputValue1))
                {
                    number.AssignInputValue(inputValue1);
                    number1 = new Binary();
                    number1.AssignInputValue(HexToBin(number));
                    number = number1;
                    inp    = "hex";
                }
                else
                {
                    Console.WriteLine("Enter a valid entry for your digit type.");
                }

                Console.WriteLine("Enter the Operation type to calculate the given input: Add(+)/Subtract(-)/Multiply(*)/Divide(/)/And(A)/Or(O)/Xor(X): \n");
                char outputType = char.Parse(Console.ReadLine());

                Console.WriteLine("\nEnter the input 2 value: ");
                inputValue2 = Console.ReadLine();
                if (bin)
                {
                    output = new Binary();
                    output.AssignInputValue(inputValue2);
                    inp = "bin";
                }
                else if (octa)
                {
                    output.AssignInputValue(inputValue2);
                    number2 = new Binary();
                    number2.AssignInputValue(OctToBin(output));
                    output = number2;
                    inp    = "oct";
                }
                else if (hex && HexInputValidation(inputValue2))
                {
                    output.AssignInputValue(inputValue2);
                    number2 = new Binary();
                    number2.AssignInputValue(HexToBin(output));
                    output = number2;
                    inp    = "hex";
                }
                else
                {
                    Console.WriteLine("Enter a valid entry for your digit type.");
                }

                Operations.Operation op = null;
                if (outputType == '+')
                {
                    op     = new Operations.AddOperation();
                    output = op.Calculate(number, output);
                }
                if (outputType == '-')
                {
                    op     = new Operations.SubOperation();
                    output = op.Calculate(number, output);
                }
                if (outputType == '*')
                {
                    op     = new Operations.MultiplyOperation();
                    output = op.Calculate(number, output);
                }
                if (outputType == '/')
                {
                    op     = new Operations.DivideOperation();
                    output = op.Calculate(number, output);
                }
                if (outputType == 'A')
                {
                    op     = new Operations.AndOperation();
                    output = op.Calculate(number, output);
                }
                if (outputType == 'O')
                {
                    op     = new Operations.OrOperation();
                    output = op.Calculate(number, output);
                }
                if (outputType == 'X')
                {
                    op     = new Operations.XorOperation();
                    output = op.Calculate(number, output);
                }
                if (inp == "hex")
                {
                    output = convertToHex(output);
                }
                else if (inp == "oct")
                {
                    output = convertToOct(output);
                }

                Console.WriteLine("\nDisplay output: " + output.ToString());
                Console.WriteLine("\n*******************************************************************\n");
                return(output.ToString());
            }