|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
11.06.2016, 10:34 | #1 |
Пользователь
Регистрация: 11.06.2016
Сообщений: 20
|
Поиск повторяющихся чисел c#
Задачка сложная, сам не могу решить. Есть массив текстбоксов tb, в каждом из них есть, допустим, по 5 не повторяющихся чисел (не повторяющихся только для каждого бокса, а не для всех). Нужно по нажатию кнопки подсчитать во всех боксах САМУЮ ЧАСТО повторяющуюся, допустим, тройку чисел, вывести эти числа, например, в один лэйбл, а во втором лэйбле показать сколько раз эта тройка чисел повторяется, а если нету ничего, то вывести 0. Приведу пример для наглядности. Пять текстбоксов, в каждом введено по пять чисел, через пробел: 1 2 3 4 5, 1 2 3 6 7, 1 2 3 8 9, 15 16 17 18 19, 15 16 17 20 21. Здесь две повторяющиеся тройки чисел 1-2-3 и 15-16-17, но 1-2-3 выпадает чаще, чем другая, точнее 3 раза. Старался попроще привести пример. Понимаю, что задачка сложная, но надеюсь, что поможете. С кодом мне помогли, но он не работает. Вот код:
Код:
Код:
Код:
|
11.06.2016, 10:49 | #2 | |
Старожил
Регистрация: 12.01.2011
Сообщений: 19,500
|
Цитата:
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом. |
|
11.06.2016, 11:02 | #3 | |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
Код:
Цитата:
просто консоль чаще проще в экспериментах. а так хоть один текстбокс можно сделать. кстати в общем алгоритм не зависит от количества элементов в одной строке. PS: от класса Fragment можно избавится в принципе. Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. Последний раз редактировалось Пепел Феникса; 11.06.2016 в 11:08. |
|
11.06.2016, 11:11 | #4 |
Пользователь
Регистрация: 11.06.2016
Сообщений: 20
|
Спасибо за ответ, проверю.
|
11.06.2016, 11:33 | #5 |
Пользователь
Регистрация: 11.06.2016
Сообщений: 20
|
Результат тот же. Ввёл числа, которые я приводил во втором примере:
Код:
P.S. Видно код может искать только 3 числа расположенные рядом и только в одном порядке, а не в разных местах и раскиданных рандомно. Последний раз редактировалось Дима85; 11.06.2016 в 11:39. |
11.06.2016, 11:51 | #6 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
Код:
ToString надо было от f брать, а не от f.Data. исправил опечатку и поправил для перебора всех вариантов. Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. Последний раз редактировалось Пепел Феникса; 11.06.2016 в 12:04. |
11.06.2016, 12:05 | #7 |
Пользователь
Регистрация: 11.06.2016
Сообщений: 20
|
Тройки никак не формируются. Массивов с числами может быть и штук 100. В каждом одинаковое количество разных не повторяющихся чисел и их вводит пользователь. Нужно просто выявить все комбинации троек чисел и сравнить их между собой и определить наибольшее количество повторяющихся. Тройки - это не обязательное требование, можно сравнивать и находить самые часто повторяющиеся пары чисел или допустим по четыре числа. Поэтому я и обращаюсь за помощью, так как самому это не решить, сложновато для новичка. )
|
11.06.2016, 12:10 | #8 | ||
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
ну я код предоставил.
он для троек, как вы и просили. для произвольного количества чисел тоже в принципе можно сделать Цитата:
Цитата:
но я сделал все комбинации в пределах групп. или нужно не по группам, а абсолютно везде? там основное было это моя опечатка, в ином случае надо просто поменять способ формирования групп Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. Последний раз редактировалось Пепел Феникса; 11.06.2016 в 12:12. |
||
11.06.2016, 12:15 | #9 |
Пользователь
Регистрация: 11.06.2016
Сообщений: 20
|
Числа сравниваются не в каждом массиве, а комбинации массивов между собой. Допустим, два массива с числами 1 2 3 4 и 1 2 3 5. В первом массиве комбинации из трёх чисел (троек) будут такие 1 2 3, 1 3 4, 1 2 4, 2 3 4, во втором 1 2 3, 1 3 5, 1 2 5, 2 3 5 (кстати 2 3 4 и 3 4 2 это одно и то же, только числа расположены в разных порядках). В обоих массивах есть одинаковая комбинация из 3 чисел - это 1 2 3, но они будут тоже одинаковы, даже если бы располагались так 1 2 3 и 2 3 1.
Мне самому не разобраться. Ладно, буду искать, может кто ещё поможет. Последний раз редактировалось Пепел Феникса; 11.06.2016 в 13:04. |
11.06.2016, 12:20 | #10 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
вообще то это и сделано. пост 6, а именно все комбинации троек в пределах одной группы берет.
я его начал обновлять до того как вы написали пост 7 просто. Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. Последний раз редактировалось Пепел Феникса; 11.06.2016 в 12:23. |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Вывод случайных не повторяющихся чисел в Stringgrid | Heng | Помощь студентам | 12 | 07.10.2012 16:59 |
Поиск повторяющихся символов | RNR | Общие вопросы Delphi | 1 | 25.06.2012 02:43 |
Определение количества повторяющихся чисел в строке | Tidus | Microsoft Office Excel | 11 | 13.12.2010 23:36 |
поиск повторяющихся элементов в матрице | I_newbie | Помощь студентам | 2 | 15.03.2010 22:44 |
Поиск повторяющихся значений | Flangini | Microsoft Office Excel | 23 | 22.02.2008 15:57 |