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

Повторить свойство элемента класса несколько раз

19.10.2013, 17:03. Показов 1127. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте.

C#
1
2
3
4
5
public class ListEntry
    {
        public ListEntry next;
        public string val;
    }
Выше описан код класса односвязного списка. Допустим у нас есть его элемент, с привязанными к нему другими элементами:
root: 1 --next--> 2 --next--> 3 --next--> 4

Существует ли такой метод или оператор, или свойство, и т.д. который будет повторять в root.next --- next n-ое количество раз, т.е. чтобы можно было написать что-то на подобие root.next[2] (я не знаю как это правильно пишется и существует ли такая штука вообще) вместо root.next.next
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
19.10.2013, 17:03
Ответы с готовыми решениями:

Повторить строку вектора несколько раз
Ну вот что со мной не так?)) #include <iostream> #include <clocale> #include <ctime> using namespace std; int...

Несколько раз повторить первую страницу с разными параметрами
Добрый день. Есть вордовый документ (во вложении). В документе заполнена первая страница. Работаю с документом word из 1C через...

Как прочитать первую строку из файла а остальной текст повторить несколько раз?
Я новичок в этом деле, прошу не осуждать. Помогите разобраться. Задание такое: Программа должна начать читать запись шоколада с...

5
54 / 50 / 16
Регистрация: 14.10.2013
Сообщений: 161
19.10.2013, 17:12
DonkeyKong, может что-то типо этого:

C#
1
2
3
4
5
public class ListEntry
{
    public List<ListEntry> next;
    public string val;
}
Получится что у вас будет храниться список объектов 'next' (не пробовал, надо тестить)

Только я не вижу смысла зачем это делать, какую структуры вы реализуете?
0
0 / 0 / 0
Регистрация: 06.10.2013
Сообщений: 30
19.10.2013, 17:23  [ТС]
Мне нужно удалить последний элемент из этого списка, а затем вывести этот список и опять удалить последний и так далее. Проблема в том, что если действовать по другому то придется копировать этот список и работать уже с другим, в итоге исходный останется не тронутым.
0
54 / 50 / 16
Регистрация: 14.10.2013
Сообщений: 161
19.10.2013, 17:33
DonkeyKong, а как вариант сделать двунаправленный список?

C#
1
2
3
4
5
6
7
public class ListEntry
{
    public string val;
    //
    public ListEntry child;
    public ListEntry parent;
}
И получается будут уже 2 переменные в общем списке:

C#
1
2
3
4
5
6
7
8
//
// Первый
//
public ListEntry first;
//
// Последний
//
public ListEntry last;
И тогда проблем с удалением из конца не будет...

Добавлено через 1 минуту
Хотя в принципе особо выигрыша нет. Когда выводите в любом случае выводить надо все элементы, и сообственно пройти их надо тоже все!
0
0 / 0 / 0
Регистрация: 06.10.2013
Сообщений: 30
19.10.2013, 17:49  [ТС]
Нужно работать именно с односвязным списком, такое задание.
0
54 / 50 / 16
Регистрация: 14.10.2013
Сообщений: 161
20.10.2013, 14:57
DonkeyKong, добавьте к классу функцию доступа [] (это типо перегрузка оператора [], называется индексатор):

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
public ListEntry this[int index]
{
    ListEntry node = root;
    //
    // Идем до указаного элемента
    // либо
    // возвращаем последний элемент если индекс больше длинны списка
    //
    for (int i = 0; node != null || i <= index; i++)
    {
        node = node.next;
    }
    //
    return node;
}
Добавлено через 31 минуту
Поправочка, начало цикла идет с 1, т.к. [0] = root:

C#
1
for (int i = 1; node != null || i <= index; i++)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
20.10.2013, 14:57
Помогаю со студенческими работами здесь

Как лучше - создавать и уничтожать несколько команд или каждый раз просто менять свойство команды
У меня несколько команд: 1) запрос к одной таблице; 2) очистка второй таблицы; 3) вставка данных во вторую таблицу Вот тут в примере...

Изменить свойство элемента формы из метода произвольного класса
Добрый вечер, эта тема не раз уже поднималась, но я, убив целый день, так и не смог понять, как изменить свойство элемента на форме из...

Как повторить действие n раз?
У меня прописано действие которое нужно повторить столько раз сколько пользователь укажет в ComboBox. Вот код который надо повторить: ...

Повторить число n 10 раз подряд
Помогите составить блок схему которая будет повторять число n 10 раз подряд и программу по этой блок схеме на паскале. В ответе пожалуйста...

Как повторить действие много раз?
webBrowser1.Document.GetElementById(&quot;profile-input&quot;).InnerText = textBox2.Text; ...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru