1 / 1 / 0
Регистрация: 11.03.2011
Сообщений: 19

Класс в С# целые числа

15.03.2011, 22:38. Показов 2477. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Создать класс ‘очередь целых чисел’ с компонентными данными: указатели на начало и конец очереди (статические компоненты), максимальный размер очереди, область памяти (массив) для элементов очереди. Предусмотреть компонентные функции: поместить число в очередь, извлечь число из очереди, проверить очередь на пустоту, вывести содержимое очереди на экран.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
15.03.2011, 22:38
Ответы с готовыми решениями:

Олимпиадная задача (10 класс, целые числа)
Доброго времени суток. Помогите разобрать след. задачу: "Целые числа m и n таковы, что сумма n^{\frac{1}{2}} + m^{\frac{1}{3}} целая....

Реализовать длинные целые числа в виде класс
здравствуйте,только начала изучение классов,помогите с решением задачи:нужно реализовать длинные целые числа в виде класса с конструктором...

Класс Hugeint (целые числа) Операции: - =, сравнение(<, >)
Описать класс, который реализовывает указанный ниже тип данных. Класс должен содержать множину конструкторов для создания объектов...

8
 Аватар для Alex_Sabaka
638 / 499 / 77
Регистрация: 28.07.2010
Сообщений: 895
15.03.2011, 23:32
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
        class intQueue
        {
            private int[] queue;
 
            public int lenght { get; private set; }
            public int head { get; private set; }
            public int tail { get; private set; }
            public bool empty { get { return this.head == this.tail; } }
 
            public intQueue(int len)
            {
                this.queue = new int[len];
                this.lenght = len;
                this.head = this.tail = 0;
            }
 
            public void enq(int val)
            {
                this.queue[this.tail] = val;
                if (this.tail + 1 > this.lenght) this.tail = 0;
                else this.tail++;
            }
 
            public int deq()
            {
                if (this.empty) throw new Exception("queue is empty");
                return this.queue[this.head++];
            }
        }
1
1 / 1 / 0
Регистрация: 11.03.2011
Сообщений: 19
16.03.2011, 10:39  [ТС]
а можно ,пожалуйста, объяснить что здесь что?
0
 Аватар для Alex_Sabaka
638 / 499 / 77
Регистрация: 28.07.2010
Сообщений: 895
16.03.2011, 21:52
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
        class intQueue //class declaration
        {
            private int[] queue; //array for queue
 
            public int length { get; private set; } //auto-prop for length
            public int head { get; private set; } //head index of queue
            public int tail { get; private set; } //tail index of queue
            public bool empty { get { return this.head == this.tail; } } //this prop means that queue empty or not
 
            public intQueue(int len) //constructor
            {
                this.queue = new int[len]; //creating array
                this.length = len;
                this.head = this.tail = 0;
            }
 
            public void enq(int val) //method push into queue new number
            {
                this.queue[this.tail] = val; //pushing number
                if (this.tail + 1 > this.length) this.tail = 0; //if tail index greatest than queue length then tail index equal to zero
                else this.tail++; //else, simply add one to tail index
            }
 
            public int deq() //method pop from queue one number
            {
                if (this.empty) throw new Exception("queue is empty"); //if queue empty throw exception
                return this.queue[this.head++]; //else, return number, and increase head index
            }
        }
1
1 / 1 / 0
Регистрация: 11.03.2011
Сообщений: 19
16.03.2011, 23:00  [ТС]
А можно написать как то попроще,без индексаторов this ??? и как найти максимальный размер очереди???
Цитата Сообщение от Alex Sabaka Посмотреть сообщение
this.queue[this.tail]

Цитата Сообщение от Alex Sabaka Посмотреть сообщение
this.queue = new int[len]; //creating array
* * * * * * * * this.length = len;
* * * * * * * * this.head = this.tail = 0
throw new Exception
0
 Аватар для Alex_Sabaka
638 / 499 / 77
Регистрация: 28.07.2010
Сообщений: 895
16.03.2011, 23:11
Цитата Сообщение от BlackMilkTea Посмотреть сообщение
без индексаторов this
В данном случае это не индексатор, а ссылка на текущий объект intQueue.
Максимальный размер это length.


Цитата Сообщение от BlackMilkTea Посмотреть сообщение
throw new Exception
И?
1
1 / 1 / 0
Регистрация: 11.03.2011
Сообщений: 19
16.03.2011, 23:34  [ТС]
я вас понял, спасибо,а можно полностью написать программу вместе с главным телом, и как нибудь пороще без THIS, если это возможно?
пожалуйста!!!
0
 Аватар для Alex_Sabaka
638 / 499 / 77
Регистрация: 28.07.2010
Сообщений: 895
17.03.2011, 18:05
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
        class intQueue
        {
            private int[] queue;
 
            public int lenght { get; private set; }
            public int head { get; private set; }
            public int tail { get; private set; }
            public bool empty { get { return this.head == this.tail; } }
 
            public intQueue(int len)
            {
                queue = new int[len];
                lenght = len;
                head = tail = 0;
            }
 
            public void enq(int val)
            {
                queue[tail] = val;
                if (tail + 1 > lenght) tail = 0;
                else tail++;
            }
 
            public int deq()
            {
                if (empty) throw new Exception("queue is empty");
                return queue[this.head++];
            }
        }
 
public static void Main()
{
    intQueue iq = new intQueue(100);
    for (int i = 0; i < 50; ++i) iq.enq((new Random(i)).Next());
    int sum = 0;
    for (int i = 0; i < 50; ++i) sum += iq.deq();
    Console.WriteLine(sum);
}
1
1 / 1 / 0
Регистрация: 11.03.2011
Сообщений: 19
17.03.2011, 19:14  [ТС]
спасибо большое,надеюсь пойму!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
17.03.2011, 19:14
Помогаю со студенческими работами здесь

Задана строка, содержащая целые числа (максимум 15 чисел). Упорядочить целые числа в строке по убыванию.
Задана строка, содержащая целые числа (максимум 15 чисел). Упорядочить целые числа в строке по убыванию. должно выглядеть что то...

Даны целые положительные числа A и B (A < B). Вывести все целые числа от A до B включительно; при этом каждое
Даны целые положительные числа A и B (A &lt; B). Вывести все целые числа от A до B включительно; при этом каждое число должно выводиться ...

В порядке убывания напечатать все целые числа из диапазона 1 . 100, которые можно представить в виде., где n, k - целые числа
В порядке убывания напечатать все целые числа из диапазона 1 .. 100, которые можно представить в виде n2+2k2...., где n, k - целые числа.

Программа (класс), которая выводит на экран все целые двузначные числа
Всем привет. Простите сразу, может для кого-то глупый вопрос, но есть такая задача: Напиши программу (класс), которая выводит на экран...

Создать класс, который запоминает целые восьмеричные числа в виде строк
Всем доброго времени суток. Столкнулся с проблемой,что не могу создать класс, который запоминает целые восьмеричные числа в виде строк! В...


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

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

Новые блоги и статьи
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2. Задача: разработка отчёта по затраченным материалам за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом. В. . .
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2. Задача: отобразить спецтехнику, которая на данный момент находится в ремонте. Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
Запрет удаления строк ТЧ документа при определённом условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru