![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу. Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста". Название темы слишком короткое или не отражает сути вашего вопроса. Тема исчерпала себя, помните, один вопрос - одна тема Прочитайте правила и заново правильно создайте тему. |
|
Опции темы
![]() |
Поиск в этой теме
![]() |
![]() |
#1 |
Форумчанин
Регистрация: 17.02.2014
Сообщений: 881
|
![]()
Delphi 7.
Имею два строковых массива: array_1[0]:='1'; array_1[1]:='1'; array_1[2]:='2'; array_1[3]:='3'; array_2[0]:='1'; array_2[1]:='2'; array_2[2]:='0'; array_2[3]:='9'; Необходимо чтобы в массиве array_1 в тех индексах значения которых совпадают с значениями в массиве array_2 записалось, например символ +. Конкретно нужно чтобы получилось в итоге: array_1[0]:='+'; array_1[1]:='1'; array_1[2]:='+'; array_1[3]:='3'; Т.е. чтобы из второго удалились элементы первого, но только один раз. получается только такой вариант: array_1[0]:='+'; array_1[1]:='+'; array_1[2]:='+'; array_1[3]:='3'; Удаляются все одинаковые элементы. Здесь удаление это присвоение '+'. Пытался обходить циклы и выходить Breack и выход из текущей итерации Continue, так и ничего не добился. Это все только пример. Предполагается, что значения индексов в массивах могут быть разными. Не смущайтесь почему я строками записал цифры, это только чтоб понятней было. Последний раз редактировалось Illusiony; 12.12.2014 в 21:54. |
![]() |
![]() |
#2 | ||
Заблокирован
Регистрация: 24.11.2014
Сообщений: 721
|
![]() Цитата:
Цитата:
Код:
Код:
Код:
|
||
![]() |
![]() |
#3 |
Форумчанин
Регистрация: 17.02.2014
Сообщений: 881
|
![]()
Второй вариант описания материала:
Имеем два массива: array_1[0]:='1'; array_1[1]:='1'; array_1[2]:='2'; array_1[3]:='3'; второй: array_2[0]:='1'; array_2[1]:='2'; Необходимо те элементы( значения индексов массивов), которые совпадают в обоих массивах заменить в первом массиве например значением '+', но только один раз. Должно получится: array_1[0]:='+'; array_1[1]:='1'; array_1[2]:='+'; array_1[3]:='3'; Сколько не пытаюсь сделать постоянно получаю такое: array_1[0]:='+'; array_1[1]:='+'; array_1[2]:='+'; array_1[3]:='3'; То есть заменяются все одинаковые элементы. Массив array_2 может содержать от 0 до 4 элементов. Массив array_1 4 элемента. Делаю два цикла и пробовал много чего, вплоть до записывание в отдельный массив те индексы второго массива, которые уже заменились и во всех последующих итерациях исключить эти замены. Но все безуспешно. Почему так получается, логически я почему то не вижу ошибки ![]() Посоветуйте примерчики пожалуйста. |
![]() |
![]() |
#4 |
Форумчанин
Регистрация: 17.02.2014
Сообщений: 881
|
![]()
Извините, сам себя и вас ввел в заблуждение.
Ошибка оказалась во входных данных. Во втором массиве оказалось не предусмотренное мною значение. В итоге все несколько моих вариантов оказались верными. спасибо всем кто читал. Последний раз редактировалось Illusiony; 14.12.2014 в 13:19. |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
как перенести элементы одного массива в другой? | sanchez1 | Помощь студентам | 5 | 02.01.2015 19:06 |
Создание одного массива из другого с использованием указателей | Vladislavv | Помощь студентам | 2 | 14.09.2014 07:16 |
Как обнулить элементы строки двумерного массива, содержащей наибольшее количество элементов одномерного массива | griignat | Помощь студентам | 1 | 22.11.2011 20:04 |
Поместить элементы Одного массива, в начало другого в обратном порядке. | Adrenalin4 | Общие вопросы C/C++ | 2 | 15.11.2010 21:51 |
как реализовать функцию для того что бы скопировать элементы одного массива во второй в обратном порядке | mansp | Общие вопросы C/C++ | 8 | 28.10.2010 15:48 |