0 / 0 / 0
Регистрация: 26.01.2016
Сообщений: 18
|
|
1 | |
Подставление данных в строках17.02.2016, 02:59. Показов 550. Ответов 2
Метки нет (Все метки)
0
|
17.02.2016, 02:59 | |
Ответы с готовыми решениями:
2
Автоматическое подставление данных Добавление данных в бд со страницы и автоматическое подставление id TableLayout - чтение данных из строк, изменение данных в строках Подставление в базе |
0 / 0 / 0
Регистрация: 26.01.2016
Сообщений: 18
|
|
17.02.2016, 05:54 [ТС] | 3 |
Да я сижу перебираю варианты как вообще всё это лучше могу сделать учитывая "возможности" =D
Есть файл A.txt (хотя у меня там и через массивы и через структуры я куда его только не вбивал). Но изначально это файл.txt (упрощенного раз в 5 вида): 1 1 1 2 1 3 1 2 4 ......... (количество столбцов одинаково по файлу и вбивается при запуске) Файл так-же есть в матрице G[stroka][stolbez] если угодно) И теперь, (примерно как в предыдущей моей "задачке"), нужно "переделать" цифры в каждой строке, приняв их за номер (физический номер) строки из файла B.txt вида: Мельница (1 2 3); Склад (-1 2 3), Хранилище (3 4 5); Притон (1 2 3); Штаб (1 2 3); Квартира (0 0 0); Бункер (-1 -2 -3); Петя (1 2 3); Т.е. берём под номерами цифр А.txt строки под этими номерами из B.txt получаем C, но нужно при этом перебрать все варианты =D И если после первого преобразования строки А все просто и получается: Мельница (1 2 3); Мельница (1 2 3); Мельница (1 2 3); То на второй должно уже получиться две строки (т.к. в файле B два варианта): Склад (-1 2 3), Мельница (1 2 3); Притон (1 2 3); Хранилище (3 4 5); Мельница (1 2 3); Притон (1 2 3); А на третьей (1 2 1 4) уже тяжелее =D Мельница (1 2 3); Склад (-1 2 3), Штаб (1 2 3); Мельница (1 2 3); Склад (-1 2 3), Квартира (0 0 0); Мельница (1 2 3); Склад (-1 2 3), Бункер (-1 -2 -3); Мельница (1 2 3); Хранилище (3 4 5); Штаб (1 2 3); Мельница (1 2 3); Хранилище (3 4 5); Квартира (0 0 0); Мельница (1 2 3); Хранилище (3 4 5); Бункер (-1 -2 -3); вот..Синтаксис, знаки препинания и прочее свободно меняется в изначальных файлах, скорость и прочее неважно кроме результата. В голову пришел топорный вариант заменять цифы по столбцам на их значения из B.txt записывая в txt с остатками значений остальных столбцов (при этом если вариантов несколько, то писать первый вариант с дублированим остатка, потом второй с дублированием остатка и т.д. - вариантов до 4ёх - пяти). Склад (-1 2 3), 1 3 Хранилище (3 4 5); 1 3 Ну а после, уже работать с txt отсчитывая "нужный столбец" от конца и проделывая то-же самое по кол-во столбцов не достигнет известного значения... потому-что варианты пухнут на глазах и динамических массивов тут наверно ненасоздаёшь( Что делать и как дальше жить?) Добавлено через 8 минут p.s. потом все эти данные удвоятся/четверятся/восмеряться/шестнадцатерятся путём добавления значений, а порой 48*рятся, возможны 48*3, 48*3*3 варианты.и всё это дело считается, но тут уже я вроде научился, а вот этот это никак не могу преодолеть который день( надеюсь тхт воспринимает миллион - полтора два строк, ведь изначально там по 15-20 цифр, но во втором файле по-прежнему до, примерно 10-20 значений из которых 3-5 "вариативных"... Добавлено через 10 минут Возможно мне следует, например расписать из B.txt строку Склад (-1 2 3), Хранилище (3 4 5) не две(точнее программе как-то определить и сделать это, и дать значения, например строка два превращается в строку два и (?) 22), А после в изначальной матрице продублировать по столбцам все с цифрами 2 на 2 и (?) 22...? и так для всего, для всех "вариативных" строк из B....(((((( Добавлено через 18 минут Что вы думаете по этому поводу форумчане? Последний вариант мне показался наиболее топорным и бескомпромиссным! Программа видит что в B.txt, в строке 3 "что-то" лишее (например в количестве 3ёх штук) Например Штаб (1 2 3); Квартира (0 0 0); Бункер (-1 -2 -3); Она это фиксирует и удаляет лишнее, оставляя Штаб(). Квартиру() она переносит на строку*10+строка т.е. на 33 (где вариантов точно не будет), а Бункер() на строка*110+строка т.е. на 333 (где вообще абстракция). И это я даже знаю как сделать сделать. Потом нужно просто для первого столбца найти "3" и скопировать строки с ними в конец моей резиновой матрицы , но уже с 33 и 333 вместо 3 в первом столбце и так до крайнего столбца...и потом уже менять всё это на данные из B... Буду очень рад если кто чем поможет)
0
|
17.02.2016, 05:54 | |
17.02.2016, 05:54 | |
Помогаю со студенческими работами здесь
3
Автоматическое подставление Замена данных в строках Подставление значений из списка Подставление параметров с апострофами Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |