Реализовать очередь и сделать меню - C#

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

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

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
 
namespace ConsoleApplication9
{
    class Program
    {
        static void Main(string[] args)
        {
            Queue<int> S = new Queue<int>();        
        Menu:
            Console.WriteLine("1. Ввести элемент");
            Console.WriteLine("2. Первый элемент очереди");
            Console.WriteLine("3. Удалить первый элемент очереди");
            Console.WriteLine("4. Количество элементов очереди");     
            Console.WriteLine("5. Поиск элемента");
            Console.WriteLine("6. Вывод очереди");
            Console.WriteLine("7. Выход");
             Vibor:
            Console.Write("Выбор: ");
            int f = int.Parse(Console.ReadLine());
            switch (f)
            {
                case 1:
                ADD:
                    {
                        Console.WriteLine("Введите элемент");
                        int o = Convert.ToInt32(Console.Read());
                        S.Enqueue(o);
                    }
                    Console.WriteLine("1. Назад");
                    Console.WriteLine("2. Добавить ещё");
                Vibor1:
                    Console.Write("Выбор: ");
                    int f1 = int.Parse(Console.ReadLine());
                    switch (f1)
                    {
                        case 1:
                            goto Menu;
                        case 2:
                            goto ADD;
                        default:
                            Console.WriteLine("Не верный пункт, ведите снова");
                            goto Vibor1;
                    }
                case 2:
                First: Console.WriteLine(S.Peek());
                Vibor2:
                    Console.Write("Выбор: ");
                    int f2 = int.Parse(Console.ReadLine());
                    switch (f2)
                    {
                        case 1:
                            goto Menu;
                        case 2:
                            goto First;
                        default:
                            Console.WriteLine("Не верный пункт, ведите снова");
                            goto Vibor2;
                    }
                case 3:
                DEL: Console.WriteLine(S.Dequeue());
                Vibor3:
                    Console.Write("Выбор: ");
                    int f3 = int.Parse(Console.ReadLine());
                    switch (f3)
                    {
                        case 1:
                            goto Menu;
                        case 2:
                            goto DEL;
                        default:
                            Console.WriteLine("Не верный пункт, ведите снова");
                            goto Vibor3;
                    }
                case 4:
                Count: Console.WriteLine(S.Count());
                Vibor4:
                    Console.Write("Выбор: ");
                    int f4 = int.Parse(Console.ReadLine());
                    switch (f4)
                    {
                        case 1:
                            goto Menu;
                        case 2:
                            goto Count;
                        default:
                            Console.WriteLine("Не верный пункт, ведите снова");
                            goto Vibor4;
                    }
                case 5:
                find: Console.WriteLine();
                    int i = Convert.ToInt32(Console.ReadLine());
                    if (S.Contains(i))
                        Console.WriteLine("Элемент " + i + " есть в очереди");
                    else
                        Console.WriteLine("Элемент отсутствует");
                Vibor5:
                    Console.Write("Выбор: ");
                    int f5 = int.Parse(Console.ReadLine());
                    switch (f5)
                    {
                        case 1:
                            goto Menu;
                        case 2:
                            goto find;
                        default:
                            Console.WriteLine("Не верный пункт, ведите снова");
                            goto Vibor5;
                    } 
                case 6:
                print:
                    {
                        foreach (int t in S)
                            Console.Write(t + " ");
                    } 
                    Vibor6:
                    Console.Write("Выбор: ");
                    int f6 = int.Parse(Console.ReadLine());
                    switch (f6)
                    {
                        case 1:
                            goto Menu;
                        case 2:
                            goto print;
                        default:
                            Console.WriteLine("Не верный пункт, ведите снова");
                            goto Vibor6;
                    } 
                default:
                    Console.WriteLine("Не верный пункт, ведите снова");
                    goto Vibor;
            }
        }
    }
}
Вот мой код. В чем тут ошибка???

Решение задачи: «Реализовать очередь и сделать меню»

textual
Листинг программы
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
 
namespace LR5
{
    class Program
    {
        static void Main(string[] args)
        {
            var queue = new Queue<int>();
            while (true)
            {
                Console.WriteLine("\n1. Ввести элемент");
                Console.WriteLine("2. Первый элемент очереди");
                Console.WriteLine("3. Удалить первый элемент очереди");
                Console.WriteLine("4. Количество элементов очереди");
                Console.WriteLine("5. Поиск элемента");
                Console.WriteLine("6. Вывод очереди");
                Console.WriteLine("0. Выход\n");
 
                Console.Write("Команда №");
                switch (Convert.ToChar((Console.ReadLine())))
                {
                    case '1':
                        Console.Write("Элемент: ");
                        queue.Enqueue(int.Parse(Console.ReadLine()));
                        break;
                    case '2':
                        if (queue.Count > 0)
                            Console.WriteLine("Первый элемент: {0}", queue.Peek());
                        else
                            Console.WriteLine("Очередь пуста.");
                        break;
                    case '3':
                        if (queue.Count > 0)
                            Console.WriteLine("Удалён элемент: {0}", queue.Dequeue());
                        else
                            Console.WriteLine("Очередь пуста.");
                        break;
                    case '4':
                        Console.WriteLine("Количество элементов в очереди: {0}", queue.Count);
                        break;
                    case '5':
                        Console.Write("Введите элемент для поиска: ");
                        int serch = int.Parse(Console.ReadLine());
 
                        int count = 0;
                        foreach (int x in queue)
                            if (x == serch)
                                count++;
                        Console.WriteLine("Элемент {0} в очереди встречается {1} раз.", serch, count);
                        break;
                    case '6':
                        Console.WriteLine("Элементы очереди: ");
                        int number = 0;
                        while (queue.Count != 0)
                        {
                            Console.WriteLine("{0}) {1}", ++number, queue.Dequeue());
                        }
                        Console.WriteLine("Очередь пуста.");
                        break;
                    case '0':
                        Console.ReadKey();
                        return;
                    default:
                        Console.WriteLine("Будьте внимательнее при вводе, попробуйте ещё раз.");
                        break;
                }
            }
 
        }
    }
}

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


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

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

9   голосов , оценка 3.778 из 5
Похожие ответы