|
0 / 0 / 0
Регистрация: 29.04.2020
Сообщений: 19
|
||||||
Проверка предыдущих строк13.06.2021, 17:44. Показов 1195. Ответов 14
Метки нет (Все метки)
Цикл foreach проходит по списку, мне нужно чтобы он проверял и предыдущие строки
0
|
||||||
| 13.06.2021, 17:44 | |
|
Ответы с готовыми решениями:
14
Удалить строку двумерного массива, если все её значния больше одной из предыдущих строк
Заполнение строк данными из предыдущих строк |
|
2639 / 1567 / 853
Регистрация: 23.02.2019
Сообщений: 3,876
|
|
| 13.06.2021, 18:24 | |
|
1
|
|
|
0 / 0 / 0
Регистрация: 29.04.2020
Сообщений: 19
|
|
| 13.06.2021, 18:42 [ТС] | |
|
Задание звучит так: Имеется файл text.txt
в котором порядка 100 строк пример в файле: QVH#T#DAB ABC# #TAS BAD#h#CBA имеется левая часть, klic и правая часть первый ключ дан "QVH" если левая часть строки подходит, то правую часть выписать в обратном порядке(будет являться новым ключом) и сравнивать с левой частью следующей строки, если не подходит левая часть смотреть дальше строки, но возможен вариант что новый ключ находится в верху списка, который мы уже прошли, так как сделать так чтобы проверялись и уже прошедшие строки на проверку лева и ключа надеюсь понятно объяснил Добавлено через 1 минуту там опечатка lines = lines1
0
|
|
|
2639 / 1567 / 853
Регистрация: 23.02.2019
Сообщений: 3,876
|
|
| 13.06.2021, 18:58 | |
|
kukudjaja, Получается, что как только любой левый ключ совпал, то вам нужно изменить правую часть и просто начать цикл по строкам заново. Для этого вместо цикла
foreach используйте обычный цикл for, чтобы была возможность обнулить итератор i и начать цикл заново.p.s. если я правильно понял конечно..
1
|
|
|
0 / 0 / 0
Регистрация: 29.04.2020
Сообщений: 19
|
||||||
| 13.06.2021, 19:17 [ТС] | ||||||
|
как можно обнулить итератор? в цикле for? не могу дойти до этого
МОжно пример какой? Добавлено через 8 минут
0
|
||||||
|
2639 / 1567 / 853
Регистрация: 23.02.2019
Сообщений: 3,876
|
||||||||||||||||
| 13.06.2021, 19:39 | ||||||||||||||||
|
Я немного переделал "на глазок", но не проверял, и по идее это должно работать. Попробуйте
Допустил ошибку в строке 16, вместо
0
|
||||||||||||||||
|
3566 / 2507 / 1174
Регистрация: 14.08.2016
Сообщений: 8,219
|
|
| 13.06.2021, 20:58 | |
|
samana, еще в 30й накосячил
а вообще, зачем такой геморрой? надо считать файл в словарик, а там по ключикам, по ключикам...
1
|
|
|
2639 / 1567 / 853
Регистрация: 23.02.2019
Сообщений: 3,876
|
|||||||||||||
| 13.06.2021, 22:02 | |||||||||||||
|
Вместо
0
|
|||||||||||||
|
3566 / 2507 / 1174
Регистрация: 14.08.2016
Сообщений: 8,219
|
|
| 13.06.2021, 22:41 | |
|
samana, если есть задвоение "ключей" то будет ошибка на этапе загрузки файла, а если просто перебирать циклом, то до задвоенного значения ты не доберешься, и даже не узнаешь что есть задвоение, более того, не понятно какое из двойных значений правильное
0
|
|
|
2639 / 1567 / 853
Регистрация: 23.02.2019
Сообщений: 3,876
|
||
| 13.06.2021, 22:54 | ||
|
p.s. только желательно не в одну linq строчку)
0
|
||
|
3566 / 2507 / 1174
Регистрация: 14.08.2016
Сообщений: 8,219
|
||||||
| 14.06.2021, 00:35 | ||||||
|
samana,
1
|
||||||
|
2639 / 1567 / 853
Регистрация: 23.02.2019
Сообщений: 3,876
|
|
| 14.06.2021, 08:40 | |
|
Diamante, ваш вариант конечно намного лучше и в оптимизации и в прозрачности кода. И даже если бы я сам подумал о словаре, то откинул бы эту мысль, только из-за неизвестности повторения ключей (хотя может их там и не было бы, но как угадать..).
И ещё я почему-то решил, что возможно нужно будет сохранить все строки обратно в файл, но уже со всеми переменами в них. Правда в задании этого не было, сам себе придумал лишнюю работу. p.s. совсем забыл про string.Concat, за него отдельное спасибо.
0
|
|
|
3566 / 2507 / 1174
Регистрация: 14.08.2016
Сообщений: 8,219
|
|
| 15.06.2021, 00:27 | |
|
samana, а что мешает сохранить обратно в файл содержимое словаря?
0
|
|
|
2639 / 1567 / 853
Регистрация: 23.02.2019
Сообщений: 3,876
|
|
| 15.06.2021, 06:15 | |
|
Diamante, придётся ещё как-то хранить строчки, которые были между правой и левой сторонами, чтобы записать их в том же порядке обратно в файл. Но опять же, в здании об этом ничего не сказано, так что скорее всего я просто придумал проблему, которой и не было.
0
|
|
| 15.06.2021, 06:15 | |
|
Помогаю со студенческими работами здесь
15
Запрет выбора предыдущих строк в ListBox
Sleep внутри функции - перекрывает выполнение предыдущих строк
Даны целые числа. Найти кол-во элементов, значение которых больше предыдущих, а для тех, которые меньше предыдущих, найти их среднее арифметическое. Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога
Финальные проекты на Си и на C++:
hello-sdl3-c. zip
hello-sdl3-cpp. zip
Результат:
|
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога
MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
|
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд.
Даже если у вас. . .
|
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает
монорепозиторий в котором находятся все исходники.
При создании нового решения, мы просто добавляем нужные проекты
и имеем. . .
|
|
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение:
В этой книге («Подход, основанный на вариантах использования») Ивар утверждает,
что архитектура программного обеспечения — это
структуры,. . .
|
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога
Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
|
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip
На первой гифке отладочные линии отключены, а на второй включены:. . .
|
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем.
. . .
|