Exemplo n.º 1
0
        // Case 0 - Addition
        private void CalculateAddition()
        {
            Clear();
            CursorVisible = true;

            SavedMath savedmath = new SavedMath();

            Write(kalkylator);

            Write("Beräkna addition!\n\n");
            Write("Skriv första termen: ");
            var     inputOne = Console.ReadLine();
            decimal outputOne;

            // Check that input value is valid decimal
            if (Decimal.TryParse(inputOne, out outputOne))
            {
                Console.Write("Skriv andra termen: ");
                var     inputTwo = Console.ReadLine();
                decimal outputTwo;
                // Check that input value is valid decimal
                if (Decimal.TryParse(inputTwo, out outputTwo))
                {
                    CursorVisible = false;
                    string       shows       = "" + kalkylator + "\n" + " ___________________________________________ \n\n" + "  " + outputOne + " + " + outputTwo + " = " + (outputOne + outputTwo) + "\n" + " ___________________________________________ \n";
                    string[]     menuoptions = { "Spara din uträkning", "Avrunda", "Avsluta utan att spara" };
                    Menusettings menuMath    = new Menusettings(shows, menuoptions);
                    int          myIndex     = menuMath.MyKeys();

                    switch (myIndex)
                    {
                    // Save calculation
                    case 0:
                    {
                        // Converting decimal to string
                        string saved = outputOne.ToString() + " + " + outputTwo.ToString() + " = " + (outputOne + outputTwo).ToString();
                        // Save to savedmath
                        Post obj = new Post();
                        obj.Saved = saved;
                        savedmath.addMath(obj);

                        Write("Du har sparat din uträkning!\n");
                        Write("Tryck ENTER för att fortsätta!");
                        ReadKey(true);
                    }
                    break;

                    // Round number
                    case 1:
                    {
                        // Check if sum is already an "integer", else use Math.Round
                        if (outputOne + outputTwo == Math.Round(outputOne + outputTwo))
                        {
                            Write("Summan är redan i heltal!\n");
                        }
                        else
                        {
                            Write(" ___________________________________________ \n");
                            Write("                                           \n");
                            Write("   " + outputOne + " + " + outputTwo + " ~ " + Math.Round(outputOne + outputTwo) + "\n");
                            Write(" ___________________________________________ \n\n");
                        }
                        Write("Tryck valfri tangent för att fortsätta!");
                        ReadKey(true);
                    }
                    break;

                    // Exit without saving
                    case 2:
                        Calculator myCalculator = new Calculator();
                        myCalculator.Start();
                        break;
                    }
                }
                else
                {
                    CursorVisible = false;
                    Write("\nDu har inte angett ett korrekt värde! Enbart siffror och decimaltecken är tillåtet. \n");
                    Write("Tryck på ENTER för att fortsätta!");
                    ReadLine();
                }
            }
            else
            {
                CursorVisible = false;
                Write("\nDu har inte angett ett korrekt värde! Enbart siffror och decimaltecken är tillåtet. \n");
                Write("Tryck på ENTER för att fortsätta!");
                ReadLine();
            }
        }
Exemplo n.º 2
0
        private void Saved()
        {
            string savetitle = @"
 ███████╗██████╗  █████╗ ██████╗  █████╗ ████████╗
 ██╔════╝██╔══██╗██╔══██╗██╔══██╗██╔══██╗╚══██╔══╝
 ███████╗██████╔╝███████║██████╔╝███████║   ██║   
 ╚════██║██╔═══╝ ██╔══██║██╔══██╗██╔══██║   ██║   
 ███████║██║     ██║  ██║██║  ██║██║  ██║   ██║   
 ╚══════╝╚═╝     ╚═╝  ╚═╝╚═╝  ╚═╝╚═╝  ╚═╝   ╚═╝  

" + "  Sparade uträkningar från kalkylatorn: ";

            string savemenu = @"
 _______________________________
|                               |
|    SKRIV OCH TRYCK ENTER:     |
|    R. Radera uträkning        |
|    A. Avsluta och återvänd    |                           
|_______________________________|
";

            while (true)
            {
                Console.Clear();
                CursorVisible = true;

                SavedMath savedmath = new SavedMath();
                int       i         = 0;

                WriteLine(savetitle);
                // i = 0;
                foreach (Post post in savedmath.getMaths())
                {
                    WriteLine("  " + "[" + i++ + "]" + post.Saved);
                }

                WriteLine(savemenu);


                // Make input values in upper case counts as lower case (X => x)
                string input = Console.ReadLine().ToLower();
                // Switch
                switch (input)
                {
                case "r":

                    Console.Write("Ange index att radera: ");
                    // Using try and catch in case errors occurs, like not valid index input
                    try
                    {
                        string index = Console.ReadLine();
                        savedmath.delMath(Convert.ToInt32(index));
                    }
                    catch
                    {
                        Console.Write("Du har inte angett ett korrekt index-värde! \n");
                        Console.Write("Tryck på ENTER för att fortsätta!");
                        Console.ReadLine();
                    }
                    break;

                case "a":
                    ReturnToStart();
                    break;
                }
            }
        }