|
172 / 3 / 1
Регистрация: 06.10.2013
Сообщений: 14
|
|
Найти в файле цифру, повторяющуюся наибольшее количество раз21.11.2013, 21:11. Показов 6662. Ответов 48
Метки нет (Все метки)
Помогите пожалуйста!
Имеется текстовый файл, в котором находятся цифры и слова, отделенные друг от друга пробелами. Необходимо найти из этого файла цифру, повторяющуюся наибольшее количество раз.
0
|
|
| 21.11.2013, 21:11 | |
|
Ответы с готовыми решениями:
48
Удаляет в записи числа цифру, повторяющуюся нечетное количество раз Удалить в записи числа цифру, повторяющуюся максимальное число раз Вывести слово, которое встречается наибольшее количество раз в файле |
|
|
|
| 22.11.2013, 12:32 | |
|
Формулировка темы — это же как карточка в библиотеке! Одним словом, тег (тэг).
И вообще, это не раздел «Помощь студентам». Оттачиваем ВБА-коды! Пусть, конечно, смотрят, как это делается.
0
|
|
|
11525 / 3812 / 683
Регистрация: 13.02.2009
Сообщений: 11,229
|
|||||||
| 22.11.2013, 15:46 | |||||||
|
Ну если считать, как оказалось, цифры, то можно и не перебирать все символы:
В приложенном файле пробелами отделены именно числа. Так что вопрос с цифрами-числами надо уточнять: Надо ли считать цифры в составе чисел или только однозначные числа подлежат учёту?
0
|
|||||||
|
Супер-модератор
|
|
| 22.11.2013, 15:57 | |
|
Alex77755, 20 раз "сплитовать" не слишком рационально. Правда, можно обойтись и десятью, если ввести рабочую переменную. Но, мне кажется, проще пройти в цикле один раз... Впрочем, надо замерить время.
0
|
|
|
11525 / 3812 / 683
Регистрация: 13.02.2009
Сообщений: 11,229
|
|
| 22.11.2013, 16:06 | |
|
Ну в данном случае не стоял вопрос о рациональности.
Просто как один из вариантов решения.
0
|
|
|
172 / 3 / 1
Регистрация: 06.10.2013
Сообщений: 14
|
||||||
| 22.11.2013, 19:14 [ТС] | ||||||
|
Подскажите еще, пожалуйста, чтобы посчитало цифру, повторяющуюся наибольшее кол-во раз, в каждой строке, как записать цикл? В приведенном коде считает только для последней строки.
0
|
||||||
|
Супер-модератор
|
|||||||
| 22.11.2013, 20:18 | |||||||
![]()
0
|
|||||||
|
|
||
| 22.11.2013, 22:37 | ||
|
Сейчас негде проверить, но что-то мне подсказывает, что в предыдущем посте максимально частой окажется наименьшая цифра из тех, частота которых одинакова (как и в посте #17).
То есть в тексте 8086 59 7722 это будет исключительно 2, так? Но загвоздка в том, что не хотя бы одну цифру (с максимальной встречаемостью), не любую, не наименьшую (что, если не ошибаюсь, сделано чётко), а без комментариев. (Я в таких случаях ищу все максимумы.)
0
|
||
|
172 / 3 / 1
Регистрация: 06.10.2013
Сообщений: 14
|
|
| 22.11.2013, 22:37 [ТС] | |
|
Задача на данный момент не в том, что может оказаться несколько цифр с одинаковым максимальным числом повторений, а в том, чтобы построчно определить цифру, наиболее часто встречающуюся. И пока она не решена.
1
|
|
|
|
||
| 22.11.2013, 22:47 | ||
|
Инна31, естественно! Потому что вверху темы о построчности нет ни слова. А рыть все посты, искать уточнения...
Catstail, ТС, сдаётся мне, неравнодушна к предложенным вариантам, и по сути я тоже не вижу вывода для каждой строки. Всё же меня (ещё до "построчной революции") смутили два последних кода:
0
|
||
|
Супер-модератор
|
|||||||
| 22.11.2013, 22:52 | |||||||
|
Но если очень хочется построчно, то вот:
1
|
|||||||
|
6998 / 2896 / 555
Регистрация: 19.10.2012
Сообщений: 8,804
|
|
| 22.11.2013, 23:00 | |
|
Что-то я так и не вижу полной ясности в задаче...
"цифру, повторяющуюся наибольшее кол-во раз, в каждой строке" - допустим есть 15 строк, и в каждой по несколько цифр с одинаковым максимальным числом повторений. Да хоть и не в каждой, а через одну. Или только в одной. А может в пятой строке только буквы... Какой нужен результат?
0
|
|
|
172 / 3 / 1
Регистрация: 06.10.2013
Сообщений: 14
|
|
| 22.11.2013, 23:12 [ТС] | |
Сообщение было отмечено как решение
Решение
Чтобы обрабатывалась каждая строка по отдельности, независимо от других.
По каждой строке искалась цифра с макс. числом повторений, если в одной строке таких будет несколько, конечно надо выводить все по идеи (но на данном этапе можно и без этого обойтись). Это учебная программа, и предусмотрено, что в каждой строке есть числа.
1
|
|
|
6998 / 2896 / 555
Регистрация: 19.10.2012
Сообщений: 8,804
|
||||||
| 22.11.2013, 23:17 | ||||||
|
Ещё раз - какой нужен результат?
Не можете описать - нарисуйте. А каждая строка уже обрабатывается, в 31 посте точно:
0
|
||||||
|
172 / 3 / 1
Регистрация: 06.10.2013
Сообщений: 14
|
|
| 22.11.2013, 23:32 [ТС] | |
|
Как должно быть в итоге (например):
В 1-ой строке максимальное количество повтор. - 4 - имеет цифра 6. В 2-ой строке максимальное количество повтор. - 7 - имеет цифра 3. В 3-ой строке максимальное количество повтор. - 4 - имеет цифра 9 и тд.
1
|
|
|
6998 / 2896 / 555
Регистрация: 19.10.2012
Сообщений: 8,804
|
||||||
| 22.11.2013, 23:58 | ||||||
|
Я свой вариант продолжил...
Куда именно выводить - не сказали, поэтому сделал как захотел.
Вкралась обидная ошибка, исправил.
2
|
||||||
|
172 / 3 / 1
Регистрация: 06.10.2013
Сообщений: 14
|
|
| 23.11.2013, 00:41 [ТС] | |
|
А как вывести результат на форму в текстбокс или label?
0
|
|
|
6998 / 2896 / 555
Регистрация: 19.10.2012
Сообщений: 8,804
|
||||||
| 23.11.2013, 01:14 | ||||||
|
Аналогично.
Только можно не создавать массив, а прямо так в цикле и перекладывать. Но что будете делать, если попадётся файл в 100 строк? Label думаю не потянет... Добавлено через 5 минут
Да, в конце один vbNewLine лишний, можно отрезать. Или сперва собрать строку, потом её подрезать, кинуть в текстбокс.
1
|
||||||
|
|
|
| 23.11.2013, 03:30 | |
|
Перечитал тему (1-й пост — условие задачи) и повторю, что строки уже позже притянуты за уши, в 25-м посте: https://cyberforum.ru/vba/thre... e3.html#25.
И до сих пор не учтено, что, вообще-то говоря, максимум (это же не парабола) не один. Кроме того, для "построчной" трактовки, и цифры-то ведь не в каждой строке обязаны быть! На программерсфоруме на эту тему чуть не разгорелась священная война (холивар то бишь). Я пока вижу так (это исполняемый файл — запуск щелчком в архиве; код по правой кнопке):
0
|
|
|
6998 / 2896 / 555
Регистрация: 19.10.2012
Сообщений: 8,804
|
|
| 23.11.2013, 13:10 | |
|
Да, строки появились позже, пробелы пропали позже, про цифры уточнили позже, как именно показывать результат - показали позже, то, что возможны несколько максимумов - я уже говорил, но ТС решила это не учитывать. Позже
1
|
|
| 23.11.2013, 13:10 | |
|
Найти самую повторяющуюся цифру в массиве цифр
Дан файл символов. Вывести на экран символ, встречающийся в файле наибольшее количество раз Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Вступаем в новую фазу генерации favicons, векторную.
russiannick 02.11.2026
Теперь нет нужды скрывать что используется простой svg. Исходный код изображения помещаем в поле и жмем кнопку. Исходник преобразуется в вид корректный для помещения в favicon или в url(). Нажатие. . .
|
Генератор паролей (вариант №4)
Maks 01.11.2026
После публикации 3-го варианта генератора паролей, разослал его своим коллегам (с целью оценки), в итоге были получены следующие рекомендации:
1. Вернуть возможность использования знаков | 1 l I;. . .
|
Генератор паролей (вариант №3)
Maks 30.10.2026
Финальная версия генератора паролей 1С.
Доработка решения в этот раз коснулась только визуальной части, а именно, добавлен реквизит ДопПараметры (тип Булево), который скрывает/ отображает реквизиты:. . .
|
Магическое мышление и магия, современная наука не отличима от магии (говорит ИИ Джемени)
zorxor 30.10.2026
Джемени, расскажи, пожалуйста, что такое магическое мышление, что такое магия, почему современная наука чем-то напоминает магию?
Фраза «Любая достаточно развитая технология неотличима от магии». . .
|
|
За какое время ИИ может подобрать пароль по хешу (рассказывает Джемени ИИ)
zorxor 30.10.2026
Расскажи, Джемени, если известен хэш МД5, например, за сколько ИИ сможет подобрать соответствующий пароль?
Искусственный интеллект (ИИ) может подобрать простой или средний по сложности пароль по. . .
|
Кто убил Suno? Почему наше солнышко погасло? (диалог с ИИ Джемени)
zorxor 30.10.2026
Как убивали Suno. Хронология.
«Убийство» музыкальной нейросети Suno — это затяжной процесс, в котором технологический хайп стартапа разбился о жесткую реальность судебных исков от гигантов. . .
|
Генератор паролей (вариант №2)
Maks 30.10.2026
Обновленная версия ранее созданной обработки.
Добавлены следующие реквизиты типа Булево:
- Буквы;
- Цифры;
- Символы.
Изменена логика команды "Сгенерировать" и процедуры "ПриОткрытии":. . .
|
Генератор паролей (вариант №1)
Maks 29.10.2026
Реализация из решения ниже выполнена исключительно по моей инициативе, дабы облегчить себе работу в создании паролей для администрируемых мною сервисов и пользователей.
Самым главным критерием для. . .
|