Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Удаление элемента массива 
V
    Опции темы
ZIFIR
Дата 9.3.2006, 20:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 129
Регистрация: 8.3.2006

Репутация: нет
Всего: нет



Подскажите пожалуйста! Как из массива mas={1,2,3...} удалить элемент.
Заранее спасибо.
PM MAIL   Вверх
chwind
Дата 9.3.2006, 20:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 70
Регистрация: 15.2.2006

Репутация: 1
Всего: 1



стоп. а как ты его создаешь?
Добавлено @ 20:55
и что значит удалить?
PM MAIL   Вверх
ZIFIR
Дата 9.3.2006, 21:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 129
Регистрация: 8.3.2006

Репутация: нет
Всего: нет



Объявляю массив mas[]={1,2,3,4,5}, и мне надо из него удалить элемент по индексу.
PM MAIL   Вверх
chwind
Дата 9.3.2006, 21:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 70
Регистрация: 15.2.2006

Репутация: 1
Всего: 1



ага, вижу как ты его создаешь:
Цитата

Как из массива mas[]={1,2,3...} выбрать случайное число (random) и записать в переменную.

удалить его прямо из этого же масива нельзя, но скорее всего тебе нужно чтобы это значение больше не выбиралось по рандому.
это можно сделать разными способами думаю самым оптимальным будет следующее решение:
пусть Х - размерность масива
ir - адрес в масиве полученный по рандому

при каждом рандоме делаем следующее

X = X-1;
int t = mass[ir];
mass[ir] = mass[X];
mass[X] = t;

тем самым мы переместили выбранное значение в конец массива подменив его еще не выбранным. И как бы уменьшили размерность массива, тоесть размерность осталась та же но теперь в функцию рандома нужно будет записать не реальную размерность, а размерность описанную переменной Х
Добавлено @ 21:12
тоесть нужно сначала (перед первым рандомом) опрелить Х
X = sizeof(mas)/sizeof(mas[0]);
а затем извлекать случайное число так:
num = random(Х);

Это сообщение отредактировал(а) chwind - 9.3.2006, 21:07
PM MAIL   Вверх
ZIFIR
Дата 9.3.2006, 21:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 129
Регистрация: 8.3.2006

Репутация: нет
Всего: нет



Спасибо огромное. Я пол дня пытался сам додуматься, но никак.

PM MAIL   Вверх
chwind
Дата 9.3.2006, 21:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 70
Регистрация: 15.2.2006

Репутация: 1
Всего: 1



незачто, удачи smile
только вот впреть вопросы задавай более полно, ато приходиться звать штатного экстрасенса smile
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++ Builder"
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по С++ Builder обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Настоятельно рекомендуем заглянуть в DRKB (Delphi Russian Knowledge Base) - крупнейший в рунете сборник материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C++ Builder | Следующая тема »


 




[ Время генерации скрипта: 0.3772 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.