Создание меню в консоли через 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);
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д