.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>(); } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д