Выделение подмассива из массива

Простейшие вопросы в области инженерной разработки
13troll

Activity
assistant
assistant
Сообщения: 105
Зарегистрирован: 27 фев 2009, 15:00
Награды: 1
Версия LabVIEW: 8.5
Контактная информация:

Выделение подмассива из массива

Сообщение 13troll »

Здравствуйте. Задача такая: есть массив 256 на 256, на выходе нужно получать массивы 128х128, 64х64, 32х32, 16х16, 8х8, 4х4 и 2х2 при этом программа должна убирать каждое второе, каждое четвертое, каждое восьмое и т.д значение из массива 256х256. Нужно сделать так чтобы можно было самому задавать размер массива 128х128, 64х64 и т.д (управляемое). Заранее спасибо
13troll

Activity
assistant
assistant
Сообщения: 105
Зарегистрирован: 27 фев 2009, 15:00
Награды: 1
Версия LabVIEW: 8.5
Контактная информация:

Re: Выделение подмассива из массива

Сообщение 13troll »

Кто нибудь знает с помошью какого блока можно убирать числа из массива?
Аватара пользователя
Eugen Graf

Activity Professionalism Silver Black
guru
guru
Сообщения: 6502
Зарегистрирован: 13 ноя 2007, 02:20
Награды: 4
Версия LabVIEW: 2009
Откуда: Saarbrücken
Контактная информация:

Re: Выделение подмассива из массива

Сообщение Eugen Graf »

А что английский хромает? Прибор называется Delete From Array, что здесь может быть непонятного?
13troll

Activity
assistant
assistant
Сообщения: 105
Зарегистрирован: 27 фев 2009, 15:00
Награды: 1
Версия LabVIEW: 8.5
Контактная информация:

Re: Выделение подмассива из массива

Сообщение 13troll »

С английским проблема((( Спасибо за помощь
13troll

Activity
assistant
assistant
Сообщения: 105
Зарегистрирован: 27 фев 2009, 15:00
Награды: 1
Версия LabVIEW: 8.5
Контактная информация:

Re: Выделение подмассива из массива

Сообщение 13troll »

Изображение
Удаляется только последний столбец из матриц 256х256.
Как сделать так чтобы он удалял каждый второй столбец, что я не правильно делаю?
Аватара пользователя
Eugen Graf

Activity Professionalism Silver Black
guru
guru
Сообщения: 6502
Зарегистрирован: 13 ноя 2007, 02:20
Награды: 4
Версия LabVIEW: 2009
Откуда: Saarbrücken
Контактная информация:

Re: Выделение подмассива из массива

Сообщение Eugen Graf »

Для этого можно сделать так:

подключить массив к сдвиговому регистру, а потом смотреть на чётность итератора, если чётный то удалять элемент (т.е. колонку), если нечётный, то не удалять.
Чётность проверяется с помощью Quotient&Remainder и числoм 2 в качестве делителя.
13troll

Activity
assistant
assistant
Сообщения: 105
Зарегистрирован: 27 фев 2009, 15:00
Награды: 1
Версия LabVIEW: 8.5
Контактная информация:

Re: Выделение подмассива из массива

Сообщение 13troll »

Изображение
Не получается((( Наверно чтото неправильно подключаю, пока что еще ниразу не работал со сдвиговым регистром.
13troll

Activity
assistant
assistant
Сообщения: 105
Зарегистрирован: 27 фев 2009, 15:00
Награды: 1
Версия LabVIEW: 8.5
Контактная информация:

Re: Выделение подмассива из массива

Сообщение 13troll »

Я сдвиговый регистр правильно подключаю?
Vya4ko
beginner
beginner
Сообщения: 49
Зарегистрирован: 02 мар 2009, 11:14
Версия LabVIEW: 8.6
Контактная информация:

Re: Выделение подмассива из массива

Сообщение Vya4ko »

нет))))
информация должна из регистра выходить

А про программу можно по подробнее(что должно бьть управляемым)
если на входе 256х256 и удаляется каджое 4 значение получаем массив 192х192

по подробнее напиши что надо сделать
13troll

Activity
assistant
assistant
Сообщения: 105
Зарегистрирован: 27 фев 2009, 15:00
Награды: 1
Версия LabVIEW: 8.5
Контактная информация:

Re: Выделение подмассива из массива

Сообщение 13troll »

У меня есть массив 256х256 нужно что чтобы программа удаляла столбцы и создавала новый массив.
Например:
Исходная матрица 1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10
1 2 3 4 5 6 7 8 9 10
На выходе надо: 1 3 5 7 9
1 3 5 7 9
1 3 5 7 9
Это я удаляю каждый второй столбец матрицы исходной, затем надо получить матрицу:
1 4 7 10
1 4 7 10
1 4 7 10
остается каждый четвертый столбец. И так далее, чтобы оставался каждый 8, 16, 32 столбец. А я мог просто этим управлять и на выходе получать нужную мне матрицу. Если знаешь как это сделать помоги пожалуйста.
Аватара пользователя
Forward

Activity Tutorials Black
professional
professional
Сообщения: 337
Зарегистрирован: 03 мар 2008, 12:41
Награды: 3
Версия LabVIEW: 2010
Откуда: Кишинев
Контактная информация:

Re: Выделение подмассива из массива

Сообщение Forward »

Вариантов много. Смотри пример...
Вложения
delete_2D.vi
(12.27 КБ) 183 скачивания
Аватара пользователя
Forward

Activity Tutorials Black
professional
professional
Сообщения: 337
Зарегистрирован: 03 мар 2008, 12:41
Награды: 3
Версия LabVIEW: 2010
Откуда: Кишинев
Контактная информация:

Re: Выделение подмассива из массива

Сообщение Forward »

Хм... хм.. получается я немного не по задаче там накидал. Тут ты не удаляешь, а выделяешь нужные столбцы - по крайней мере так четче зависимость просматривается. :wink: )
Можешь это сделать вот так, например:
Вложения
2D.jpg
13troll

Activity
assistant
assistant
Сообщения: 105
Зарегистрирован: 27 фев 2009, 15:00
Награды: 1
Версия LabVIEW: 8.5
Контактная информация:

Re: Выделение подмассива из массива

Сообщение 13troll »

Спасибо за помощь
13troll

Activity
assistant
assistant
Сообщения: 105
Зарегистрирован: 27 фев 2009, 15:00
Награды: 1
Версия LabVIEW: 8.5
Контактная информация:

Re: Выделение подмассива из массива

Сообщение 13troll »

Forward писал(а):Вариантов много. Смотри пример...
Для Y=2 все работает, а если подставить 4 он просто удаляет каждый 4 столбец, а надо чтобы удалялись все кроме каждого 4 столбца.
Vya4ko
beginner
beginner
Сообщения: 49
Зарегистрирован: 02 мар 2009, 11:14
Версия LabVIEW: 8.6
Контактная информация:

Re: Выделение подмассива из массива

Сообщение Vya4ko »

Forward выложил :vi: delete_2D.vi

там просто немножко надо поменять

по моему так)))))
Вложения
delete_2D.vi
(14.64 КБ) 181 скачивание
Ответить
  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Для чайников»