Форум программистов, компьютерный форум, киберфорум
Наши страницы

C# для начинающих

Войти
Регистрация
Восстановить пароль
 
Silencest
1 / 0 / 0
Регистрация: 05.10.2012
Сообщений: 21
#1

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

07.10.2012, 10:20. Просмотров 568. Ответов 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
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.10.2012, 10:20
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Дописать команду, которая возвращает консольное приложение в предыдущее меню (C#):

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

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

Построить циклическое консольное меню-приложение "Операции отношения и сдвига" - C#
Ребят, помогите пожалуйста, времени не хватает на всё... помогите задание сделать. в w.forms и в консоли... вот само задание: ...

консольное приложение - C#
Помогите реализовать задачу Написать на С# код консольного приложения, реализующий в главной функции ввод с клавиатуры в переменные...

Консольное приложение - C#
Привет!Напишите плиз программу, кому не сложно, в свое время упустил матрериал, сам виноват! Задание: Составить описание класса для...

Консольное приложение - C#
Задача: составить программу вычисления функции.Вывести результат вычисления и величину,от которой зависит выбор условия.

2
I2um1
Злой няш
1403 / 1101 / 142
Регистрация: 05.04.2010
Сообщений: 1,949
07.10.2012, 10:40 #2
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
Silencest
1 / 0 / 0
Регистрация: 05.10.2012
Сообщений: 21
07.10.2012, 10:56  [ТС] #3
спасибо огромное, теперь я знаю два способа это сделать. один ваш,и один я нашла в методичке у преподавателя,после часа поисков))
можно еще перед
Цитата Сообщение от I2um1 Посмотреть сообщение
C#
1
2
{
  Console.WriteLine("Выберете операцию:");
дописать "One:", а после всех case, после фигурной скобки "goto One;". оно, правда, будет циклиться,но тоже работает хорошо, и препод принял работу))))

спасибо еще раз, ваш способ гораздо лучше, конечно))
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.10.2012, 10:56
Привет! Вот еще темы с ответами:

.NET 4.x Консольное приложение - C#
Здравствуйте. Подскажите Пожалуйта как можно сделать повтор приложения к примеру: int iInteger1, iInteger2; iInteger2 = 10; ...

Запароленное консольное приложение - C#
Создайте в VisuaI Studio прототип консольного приложения C#, защищенного паролем от запуска. При запуске такого приложения должен...

Многопоточное консольное приложение C# - C#
Здравствуйте,подскажите пожалуйста как сделать это задание? Потоки знаю,сделать смогу. Не знаю как сделать ООП и не понимаю с статистикой...

Консольное приложение поиска - C#
Дали задание по программированию: &quot;Написать консольное приложение поиска музыкальных альбомов исполнителя. При вводе пользователем...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru