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

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

15.03.2011, 22:38. Показов 2452. Ответов 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
Ответ Создать тему
Новые блоги и статьи
Загрузка PNG-файла с альфа-каналом с помощью библиотеки SDL3_image на Android
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru