Создание меню в консоли через case - C#

Узнай цену своей работы

Формулировка задачи:

Кто может помочь объяснить, как сделать меню, а то сколько не пробую, у меня все время ошибки. Надо создать меню где будет 4 пункта. 1 Ввод 2 Расчет 3 Сохранение 4 выход Я не знаю, куда писать код. Знаю, что используется switch и case
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
 
namespace ConsoleApplication39
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.BufferWidth = 125;
            Console.WindowWidth = 125;
            double min1 = 999999, min2 = 999999, sred1 = 0, sred2 = 0, max1 = -999999, max2 = -999999;
            double sredv1 = 0, sredv2 = 0, D1 = 0, D2 = 0;
            Console.WriteLine("Выберите число важности нажав на кнопку от 0 до 6. 0 = 0,01 | 1 = 0,05 | 2 = 0,1 | 3 = 0,15 | 4 = 0,2 | 5 = 0,25 | 6 = 0,3");
            int yw = Convert.ToInt32(Console.ReadLine());
            double[,] TAB = new double[20, 7]     {{63.6567412, 12.7062047, 6.3137515, 4.1652998, 3.0776835,  2.4142136, 1.9626105},
                                                    {9.9248432, 4.3026527, 2.9199856, 2.2819306, 1.8856181, 1.6035675, 1.3862066},
                                                    {5.8409093, 3.1824463, 2.3533634, 1.9243197, 1.6377444, 1.4226253, 1.2497781},
                                                    {4.6040949, 2.7764451, 2.1318468, 1.7781922, 1.5332063, 1.3443976, 1.1895669},
                                                    {4.0321430, 2.5705818, 2.0150484, 1.6993626, 1.4758840, 1.3009490, 1.1557673},
                                                    {3.7074280, 2.4469119, 1.9431803, 1.6501732, 1.4397557, 1.2733493, 1.1341569},
                                                    {3.4994833, 2.3646243, 1.8945786, 1.6165917, 1.4149239, 1.2542787, 1.1191591},
                                                    {3.3553873, 2.3060041, 1.8595480, 1.5922214, 1.3968153, 1.2403183, 1.1081454},
                                                    {3.2498355, 2.2621572, 1.8331129, 1.5737358, 1.3830287, 1.2296592, 1.0997162},
                                                    {3.1692727, 2.2281389, 1.8124611, 1.5592359, 1.3721836, 1.2212554, 1.0930581},
                                                    {3.1058065, 2.2009852, 1.7958848, 1.5475598, 1.3634303, 1.2144602, 1.0876664},
                                                    {3.0545396, 2.1788128, 1.7822876, 1.5379565, 1.3562173, 1.2088525, 1.0832114},
                                                    {3.0122758, 2.1603687, 1.7709334, 1.5299196, 1.3501713, 1.2041462, 1.0794687},
                                                    {2.9768427, 2.1447867, 1.7613101, 1.5230951, 1.3450304, 1.2001403, 1.0762802},
                                                    {2.9467129, 2.1314495, 1.7530504, 1.5172280, 1.3406056, 1.1966893, 1.0735314},
                                                    {2.9207816, 2.1199053, 1.7458837, 1.5121302, 1.3367572, 1.1936854, 1.0711372},
                                                    {2.8982305, 2.1098156, 1.7396067, 1.5076598, 1.3333794, 1.1910471, 1.0690331},
                                                    {2.8784405, 2.1009220, 1.7340636, 1.5037077, 1.3303909, 1.1887115, 1.0671695},
                                                    {2.8609346, 2.0930241, 1.7291328, 1.5001888, 1.3277282, 1.1866293, 1.0655074},
                                                    {2.8453397, 2.0859634, 1.7247182, 1.4970355, 1.3253407, 1.1847614, 1.0640158}};
            //переменная количество символов в выборке
            Console.WriteLine("Введите количество значений в массиве");
            int n = Convert.ToInt32(Console.ReadLine());
            //массив содержащий обе выборки
            double[,] vod = new double[2, n];
            double[,] vod1 = new double[2, n];
            Console.WriteLine("Введите массив");
            for (int i = 0; i < 2; i++)
            {
                for (int j = 0; j < n; j++)
                { vod[i, j] = Convert.ToDouble(Console.ReadLine()); }
            }
 
            for (int j = 0; j < n; j++)
            {
                if (vod[0, j] < min1)
                {
                    min1 = vod[0, j];
                }
                if (vod[0, j] > max1)
                {
                    max1 = vod[0, j];
                }
                sred1 = sred1 + vod[0, j];
                if (vod[1, j] < min2)
                {
                    min2 = vod[1, j];
                }
                if (vod[1, j] > max2)
                {
                    max2 = vod[1, j];
                }
                sred2 = sred2 + vod[1, j];
            }
            sred1 = sred1 / n;
            sred2 = sred2 / n;
            Console.WriteLine("Среднее арифметическое первого ряда " + sred1);
            Console.WriteLine("Среднее арифметическое второго ряда " + sred2);
            Console.WriteLine("Минимум первого ряда " + min1 + "; Максимум первого ряда " + max1);
            Console.WriteLine("Минимум второго ряда " + min2 + "; Максимум второго ряда " + max2);
            //нашли среднее линейное отклонение
            for (int j = 0; j < n; j++)
            {
                vod1[0, j] = Math.Abs(vod[0, j] - sred1);
                vod1[1, j] = Math.Abs(vod[1, j] - sred2);
                //среднее линейное отклонение
                sredv1 = vod1[0, j] + sredv1;
                sredv2 = vod1[1, j] + sredv2;
            }
            sredv1 = sredv1 / n;
            sredv2 = sredv2 / n;
            Console.WriteLine("Среднее линейное арифметическое первого ряда " + sredv1);
            Console.WriteLine("Среднее линейное арифметическое второго ряда " + sredv2);
            for (int j = 0; j < n; j++)
            {
                D1 = Math.Pow(vod1[0, j], 2) + D1;
                D2 = Math.Pow(vod1[1, j], 2) + D2;
            }
            //дисперсия
            D1 = D1 / n;
            D2 = D2 / n;
            double tk = TAB[n, yw];
            double tnab = (Math.Abs(sred1 - sred2) / Math.Sqrt(n * D1 + n * D2)) * Math.Sqrt(n * n * (n + n - 2) / (n + n));
            Console.WriteLine("Проверка  " + tnab + "Проверка 1 " + tk);
            if (tnab < tk)
            {
                File.WriteAllText("ask", "данные выборки равны");
            }
            else
            {
                File.WriteAllText("ask", "данные выборки не равны");
            }
            Console.ReadLine();
        }
    }
}

Решение задачи: «Создание меню в консоли через case»

textual
Листинг программы
do{
Console.WriteLine("1 Ввод\n2 Расчет\n3 Сохранение\n4 выход");
            int i = int.Parse(Console.ReadLine());
            switch (i)
            {
                case 1:
                    Console.WriteLine("Ввод");
                    break;
                case 2:
                    Console.WriteLine("Расчет");
                    break;
                case 3:
                    Console.WriteLine("Сохранение");
                    break;
                case 4:
                    Console.WriteLine("выход");
                    return;
                   
                default:
                    Console.WriteLine("Ошибка");
                    break;
            }
}while(true);

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

7   голосов , оценка 4.286 из 5