Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.57/7: Рейтинг темы: голосов - 7, средняя оценка - 4.57
1 / 0 / 1
Регистрация: 05.10.2012
Сообщений: 21

Дописать команду, которая возвращает консольное приложение в предыдущее меню

07.10.2012, 10:20. Показов 1479. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Ребят, помогите,пожалуйста. Надо оформить функцию или команду(не знаю,как назвать),чтобы при нажатии какой либо клавиши она возвращала мою программу в меню выбора. т.е.когда запускаешь программу появляется меню,примерно следующего содержания:
1.периметр
2.площадь
3.высоты
4....
5.полное описание.
и когда я выбираю определенную операцию, она выполняется и программа завершается,а надо предусмотреть то, чтобы она не заканчивалась, а переходила в выше описанное меню. и только,когда я захочу она завершалась. вот текст программы(честно говорю,что она только доработана мной, так она не моя).
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
using System;
using System.Collections.Generic;
using System.Text;
 
namespace z15_b
{
    class Triangle
    {
        static void Main(string[] args)
{Console.WriteLine("Введите стороны и углы треугольника:");
            input();
Console.WriteLine("Выберете операцию:");
Console.WriteLine("1. Периметр треугольника");
Console.WriteLine("2. Площадь треугольника");
Console.WriteLine("3. Вычисление высоты треугольника");
Console.WriteLine("4. Вид треугольника");
Console.WriteLine("5. Описание треугольника");
Console.WriteLine("0. вернутсья назад");
 
        int num = Convert.ToInt32(Console.ReadLine());
        double output = 0;
        double pp = (arr[0] + arr[1] + arr[2])/2;
        Console.Clear();
        switch (num)
            
               
{   case 1:
     Console.WriteLine("Периметр : {0}см", arr[0] + arr[1] + arr[2]);
   break;
    case 2:
     Console.WriteLine("Площадь : {0}см", Math.Sqrt(pp * (pp - arr[0]) * (pp - arr[1]) * (pp - arr[2])));
   break;
    case 3:
                    for (int i = 0; i < 3; i++)
                    {
                        output = 2 * (Math.Sqrt(pp * (pp - arr[0]) * (pp - arr[1]) * (pp - arr[2]))) / arr[i];
                        Console.WriteLine("Высота опущенна на сторону №{0} равняется {1}см",i+1,output);
                    }                    
                    break;
                case 4:
                    type();
                    break;
                case 5:
                    Console.WriteLine("Полное описание треугольника:");
                    Console.WriteLine("Периметр : {0}см", arr[0] + arr[1] + arr[2]);
                    Console.WriteLine("Площадь : {0:F4}см", Math.Sqrt(pp * (pp - arr[0]) * (pp - arr[1]) * (pp - arr[2])));
                    for (int i = 0; i < 3; i++)
                    {
                        output = 2 * (Math.Sqrt(pp * (pp - arr[0]) * (pp - arr[1]) * (pp - arr[2]))) / arr[i];
                        Console.WriteLine("Высота опущенна на сторону №{0} равняется {1:F4}см", i + 1, output);
                    }
                    type();
                    break;
                    
            }
            
               
               
            Console.ReadLine();
        }
        public static void type()
        {
            int[] a = new int[6];
            for (int i = 0; i < 6; i++)
            {
                a[i] = Convert.ToInt32(arr[i]);
            }
            if (a[0] == a[1] && a[1] == a[2])
            {
                Console.WriteLine("Треугольник равносторонний");
                return;
            }
            if (a[0] == a[1] || a[1] == a[2] || a[2] == a[0])
            {
                Console.WriteLine("Треугольник равноберенный");
            }
            if (a[0] != a[1] && a[1] != a[2])
            {
                Console.WriteLine("Треугольник разносторонний");
            }
        }
        public static double[] arr = new double[6];
        public static void input()
        {
            beg_input:
            for (int i = 1; i < 7; i++)
            {
                if (i < 4)
                {
                    Console.WriteLine("Введите сторону №" + i);
                    arr[i-1] = Convert.ToInt32(Console.ReadLine());
                   
                    
                }
                else
                {
                    Console.WriteLine("Введите угол  №" + i);
                    arr[i-1] = Convert.ToInt32(Console.ReadLine());
                }
            }
            
                if (arr[3] + arr[4] + arr[5] != 180)
                {
                    Console.Clear();
                    Console.WriteLine("Сумма углов не равна 180. Повторите ввод");
                    goto beg_input;
                }
                if (((arr[0] + arr[1]) > arr[2]) && ((arr[1] + arr[2]) > arr[0]) && ((arr[0] + arr[2]) > arr[1]))
                {
                    Console.WriteLine("треугольник  существует. можете продолжить.");
                }
                else
                {
                    Console.Clear();
                    Console.WriteLine("треугольник не существует. повторите ввод");
                    goto beg_input;
                }
             Console.Clear();
        }  
    }
}
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
07.10.2012, 10:20
Ответы с готовыми решениями:

Передать команду в консольное приложение
В общем у меня по адресу D:\Users\RGaynullin\source\repos\WindowsFormsApp1\WindowsFormsApp1\bin\Debug лежит приложение: TNCcmd.exe и...

TextUserInterface меню(Консольное приложение)
Здравствуйте, есть меню в котором 5 пунктов. В пункте 1 есть есть аналогичное подменю с такой же структурой. Проблема в том, что при...

Консольное приложение, главное меню
Доброго времени суток! Пишу на практике консольное приложение. Вопрос такого характера: при старте приложение имеет меню, мол...

2
Злой няш
 Аватар для I2um1
2136 / 1505 / 565
Регистрация: 05.04.2010
Сообщений: 2,881
07.10.2012, 10:40
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
static void Main()
{
    Console.WriteLine("Введите стороны и углы треугольника:");
    input();
    bool repeat = true;
    while (repeat)
    {
        Console.WriteLine("Выберете операцию:");
        Console.WriteLine("1. Периметр треугольника");
        Console.WriteLine("2. Площадь треугольника");
        Console.WriteLine("3. Вычисление высоты треугольника");
        Console.WriteLine("4. Вид треугольника");
        Console.WriteLine("5. Описание треугольника");
        Console.WriteLine("0. Выход");
 
        int num = Convert.ToInt32(Console.ReadLine());
        double output = 0;
        double pp = (arr[0] + arr[1] + arr[2]) / 2;
        Console.Clear();
        switch (num)
        {
            case 1:
                Console.WriteLine("Периметр : {0}см", arr[0] + arr[1] + arr[2]);
                break;
            case 2:
                Console.WriteLine("Площадь : {0}см",
                                  Math.Sqrt(pp * (pp - arr[0]) * (pp - arr[1]) * (pp - arr[2])));
                break;
            case 3:
                for (int i = 0; i < 3; i++)
                {
                    output = 2 * (Math.Sqrt(pp * (pp - arr[0]) * (pp - arr[1]) * (pp - arr[2]))) / arr[i];
                    Console.WriteLine("Высота опущенна на сторону №{0} равняется {1}см", i + 1, output);
                }
                break;
            case 4:
                type();
                break;
            case 5:
                Console.WriteLine("Полное описание треугольника:");
                Console.WriteLine("Периметр : {0}см", arr[0] + arr[1] + arr[2]);
                Console.WriteLine("Площадь : {0:F4}см",
                                  Math.Sqrt(pp * (pp - arr[0]) * (pp - arr[1]) * (pp - arr[2])));
                for (int i = 0; i < 3; i++)
                {
                    output = 2 * (Math.Sqrt(pp * (pp - arr[0]) * (pp - arr[1]) * (pp - arr[2]))) / arr[i];
                    Console.WriteLine("Высота опущенна на сторону №{0} равняется {1:F4}см", i + 1, output);
                }
                type();
                break;
            case 0:
                repeat = false;
                break;
        }
    }
 
    Console.ReadLine();
}
1
1 / 0 / 1
Регистрация: 05.10.2012
Сообщений: 21
07.10.2012, 10:56  [ТС]
спасибо огромное, теперь я знаю два способа это сделать. один ваш,и один я нашла в методичке у преподавателя,после часа поисков))
можно еще перед
Цитата Сообщение от I2um1 Посмотреть сообщение
C#
1
2
{
  Console.WriteLine("Выберете операцию:");
дописать "One:", а после всех case, после фигурной скобки "goto One;". оно, правда, будет циклиться,но тоже работает хорошо, и препод принял работу))))

спасибо еще раз, ваш способ гораздо лучше, конечно))
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
07.10.2012, 10:56
Помогаю со студенческими работами здесь

Консольное приложение, создание меню.
Все доброго времени суток.Есть консоль7ное приложение,я хочу сделать в нем меню.Вот так примерно это должно выглядеть: ...

Вызвать консольное приложение C# из проекта winforms и дать команду завершения также из winforms
Добрый день ! у меня есть проект на C# на winforms. я написал также консольное приложение на C#. Хочу это консольное вызвать из...

Построить циклическое консольное меню-приложение «Арифметические операции»
Построить циклическое консольное меню-приложение «Арифметические операции». Команды меню задают арифметические операции, ...

Построить циклическое консольное меню-приложение «Арифметические операции»
Задача: Построить циклическое консольное меню-приложение «Арифметические операции». Команды меню задают арифметические операции,...

Консольное приложение. Создать меню, которое будет располагаться по середине
Всем привет. Как всегда курсовая :wall: Нужно создать меню, которое будет располагаться по середине. Вопрос первый: есть ли в С++ функция,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это дополнительная запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru