.NET 4.x Создание массива (или хэш-таблицы) - C#

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

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

Доброе всем! Может для кого и просто, но уже не соображу) Есть 64 человека. Есть бд. У каждого человека в этой бд есть поля: имя, возраст, родной город. Необходимо получить следующий результат: один массив (может и хэш-таблица), в этом хранилище данные располагаются следующим образом- первые 16 человек, вторые 16, третьи 16, четвертые 16. Допустим: 1-й чел - 0, Андрей, 18, Пермь. 2-й чел - 1, Роман, 24, Тверь. 3-й чел - 0, Андрей, 18, Пермь (нужно сделать так, чтобы записать сюда именно 0-й результат, дабы избежать повторения) ... 16-й чел - 14, Михаил, 25, Ростов. формируем другую группу, но в том же хранилище: 17-й чел - 0, Иван, 22, Белгород. 18-й чел - 1, Петр, 23, Иваново и т.д. В общем, нужно одно хранилище, с разбитыми на группы людьми, учитывая повторения их полей бд.

Решение задачи: «.NET 4.x Создание массива (или хэш-таблицы)»

textual
Листинг программы
Person[] data = new Person[64];
NumberedPerson[] result = new NumberedPerson[64];
DB.Load(data);
var group = new HashSet<Person>();
for (int i = 0, number = 0; i < 64; i++)
{
    if (group.Add(data[i]))
        number++;
    result[i] = new NumberedPerson(data[i], number);
    if ((i + 1)%16 == 0)
    {
        number = 0;
        group = new HashSet<Person>();
    }
}

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


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

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

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