powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Как убрать нулевые элементы из массива
6 сообщений из 6, страница 1 из 1
Как убрать нулевые элементы из массива
    #35850771
rainurka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть массив
Код: plaintext
1.
Dim a( 7 )=Array( 1 , 2 , 0 , 0 , 0 , 0 , 15 )

Как убрать все нулевые элементы и на выходе получить

Код: plaintext
1.
Dim b( 3 )=Array( 1 , 2 , 15 )
...
Рейтинг: 0 / 0
Как убрать нулевые элементы из массива
    #35850810
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Создать второй массив такого же размера, пробежаться по первому, скопировать ненулевые элементы, обрезать массив.
...
Рейтинг: 0 / 0
Как убрать нулевые элементы из массива
    #35850874
rainurka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Antonariy , вот так будет правильно?
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
Dim a( 5 )=Array( 1 , 2 , 0 , 0 , 0 , 0 , 15 )
Dim b( 5 ) as Integer
Dim i,raz as Integer
For i= 1  to  5 
if(a(i)<> 0 ) then
raz=UBound(b)
b(raz+ 1 )=a(i)
End if
Next
...
Рейтинг: 0 / 0
Как убрать нулевые элементы из массива
    #35850958
FAndrew
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rainurka,

Нет, не правильно. UBound(b) всегда будет возвращать 5.
По вашей задаче можно попробовать поиграться с ReDim с опцией Preserve
...
Рейтинг: 0 / 0
Как убрать нулевые элементы из массива
    #35850964
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Скорее нет, чем да.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
Dim a() as Integer, b() as Integer
Dim i as Integer, raz as Integer

a = Array( 1 , 2 , 0 , 0 , 0 , 0 , 15 )
Redim b(UBound(a))
For i= 0  to UBound(a)
    if(a(i)<> 0 ) then
        b(raz)=a(i)
        raz=raz+ 1 
    End if
Next
Redim Preserve b(raz)
...
Рейтинг: 0 / 0
Как убрать нулевые элементы из массива
    #35851015
rainurka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Antonariy большое спасибо. То что нужно
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Как убрать нулевые элементы из массива
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]