Задание "В массиве X обменять местами первый и последний четные элементы".
Имеется блок схема
Преподователь сказал убрать всё то что обведено красным и в блоке номер первого чётного элемента записать в индекс first, а номер последнего в last, а позже поменять их местами. Я не могу понять как это реализовать.
В массиве обменять местами элементы
-
IvanLis
- guru
- Сообщения: 5462
- Зарегистрирован: 02 дек 2009, 17:44
- Награды: 7
- Версия LabVIEW: 2015, 2016
- Откуда: СССР
- Благодарил (а): 28 раз
- Поблагодарили: 86 раз
Re: В массиве обменять местами элементы
Если не вникать в алгоритм, представленный ниже, то можно так сделать: Порадуйте преподавателяFASHAR писал(а):Задание "В массиве X обменять местами первый и последний четные элементы".
--------------------
Наверное правильнее будет так Иначе, если четные элементы в массиве будут отсутствовать, то первый и последний элементы поменяются местами, а нам это не нужно.
Знание нескольких принципов освобождает от знания многих фактов!
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
-
- assistant
- Сообщения: 122
- Зарегистрирован: 09 дек 2014, 10:14
- Версия LabVIEW: 7-2015
- Откуда: Санкт-Петербург
- Контактная информация:
Re: В массиве обменять местами элементы
Будет ли более правильный вариант работать для массива, к примеру, 2 0 0 0 4 ?IvanLis писал(а): Наверное правильнее будет так
Иначе, если четные элементы в массиве будут отсутствовать, то первый и последний элементы поменяются местами, а нам это не нужно.
Как вариант :
-
IvanLis
- guru
- Сообщения: 5462
- Зарегистрирован: 02 дек 2009, 17:44
- Награды: 7
- Версия LabVIEW: 2015, 2016
- Откуда: СССР
- Благодарил (а): 28 раз
- Поблагодарили: 86 раз
Re: В массиве обменять местами элементы
А почему нет?rbl писал(а):Будет ли более правильный вариант работать для массива, к примеру, 2 0 0 0 4 ?
Поиск с начала выдаст элемент "2" (индекс 0).
Поиск с конца выдаст элемент "4" (индекс 4).
И поменяет их местами.
К тому же, "0" - четное число, по этому его наличие и положение не влияет на результат.
Более корректно задавать массив в целочисленном типе, наличие дробной части сразу сводит к "0" определение четности/нечетности.
"В массиве X обменять местами первый и последний четные элементы"
Знание нескольких принципов освобождает от знания многих фактов!
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
-
- assistant
- Сообщения: 122
- Зарегистрирован: 09 дек 2014, 10:14
- Версия LabVIEW: 7-2015
- Откуда: Санкт-Петербург
- Контактная информация:
Re: В массиве обменять местами элементы
Либо я не так смотрю, но как мне кажется поиск с конца выдаст элемент 4, индекс 0. Что в дальнейшем приведет к фолсу на выходе "не равно" и также фолс на выходе "и".IvanLis писал(а):А почему нет?rbl писал(а):Будет ли более правильный вариант работать для массива, к примеру, 2 0 0 0 4 ?
Поиск с начала выдаст элемент "2" (индекс 0).
Поиск с конца выдаст элемент "4" (индекс 4).
И поменяет их местами.
-
- interested
- Сообщения: 8
- Зарегистрирован: 25 окт 2016, 22:36
- Версия LabVIEW: 2016
- Контактная информация:
Re: В массиве обменять местами элементы
Благодарю, порадовал преподавателя и сделал программу в один цикл.Порадуйте преподавателя
Подскажите, как создать зелёный элемент с названием Replace перед Case Selector?
-
- assistant
- Сообщения: 122
- Зарегистрирован: 09 дек 2014, 10:14
- Версия LabVIEW: 7-2015
- Откуда: Санкт-Петербург
- Контактная информация:
Re: В массиве обменять местами элементы
Вы даже не знаете, что это за элемент и почему он зеленый? Название учебного заведения не подскажите?FASHAR писал(а):Благодарю, порадовал преподавателя и сделал программу в один цикл.Порадуйте преподавателя
Подскажите, как создать зелёный элемент с названием Replace перед Case Selector?
-
- doctor
- Сообщения: 2210
- Зарегистрирован: 28 июн 2012, 09:32
- Награды: 3
- Версия LabVIEW: 2009..2020
- Откуда: город семи холмов
- Благодарил (а): 27 раз
- Поблагодарили: 26 раз
Re: В массиве обменять местами элементы
на зеленой линии ПКМ->Create Indicatorкак создать зелёный элемент с названием Replace перед Case Selector?
-
IvanLis
- guru
- Сообщения: 5462
- Зарегистрирован: 02 дек 2009, 17:44
- Награды: 7
- Версия LabVIEW: 2015, 2016
- Откуда: СССР
- Благодарил (а): 28 раз
- Поблагодарили: 86 раз
Re: В массиве обменять местами элементы
Сейчас все пересмотрел, Вы абсолютно правы.rbl писал(а):Либо я не так смотрю, но как мне кажется поиск с конца выдаст элемент 4, индекс 0. Что в дальнейшем приведет к фолсу на выходе "не равно" и также фолс на выходе "и".
Второй месяц в режиме Zeit Not сказываются, внимание рассеивается, исправляя одни ошибки, допускаешь другие.
Но "коллективный разум" подтверждает свою актуальность
Сравнение необходимо делать именно значений Last и First. Уже боюсь предлагать варианты, но должно быть вроде так:
Знание нескольких принципов освобождает от знания многих фактов!
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...