Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 03.11.2021, 10:02   #1
Viol_let
Новичок
Джуниор
 
Регистрация: 03.11.2021
Сообщений: 2
Восклицание Excel VBA задача с массивом

В массиве все элементы, равные нулю, расположить после первого отрицательного элемента.

Вижу что перемудрила с кодом, но не могу понять где.

Код:
Dim a() As Integer
Dim b() As Integer
Private Sub CommandButton1_Click()
m = Val(TextBox1.Text)
m1 = m + 2
 ReDim a(1 To m)
  ReDim b(1 To m1)
 Randomize
 k = 1
 r = 0
 ListBox1.Clear
 ListBox2.Clear
 For i = 1 To m
 a(i) = Int(Rnd * 10) - 5
  ListBox1.AddItem ("a(" + Str(i) + ")= " + Str(a(i)))
  b(i) = a(i)
 Next i
 For i = 1 To m
 If a(i) < 0 Then
 ii = i
 Exit For
   End If
   Next i
     If ii <> 1 Then
   k = 1
   Else
   b(1) = 0
   k = 2
   End If
 If ii <> 1 Then
For i = 1 To ii - 1
b(k) = a(i)
k = k + 1
Next i
b(k) = 0
k = k + 1
End If
For i = m To 1 Step -1
 If a(i) < 0 Then
 i1 = i
 Exit For
   End If
   Next i
    For i = ii To i1
   b(k) = a(i)
   k = k + 1
     Next i
     b(k) = 0
     If i1 <> m Then
     For i = i1 + 1 To m
    b(k + 1) = a(i)
    k = k + 1
    Next i
   End If
 For i = 1 To k
 ListBox2.AddItem ("b(" + Str(i) + ")= " + Str(b(i)))
  Next i
End Sub
Viol_let вне форума Ответить с цитированием
Старый 03.11.2021, 11:37   #2
Aleksandr H.
2 the Nation Glory
Старожил
 
Аватар для Aleksandr H.
 
Регистрация: 27.05.2014
Сообщений: 3,289
По умолчанию

1)Каким должен быть ответ для таких массивов?
Код:
1 0 0 0 -2
Код:
1 0 0 -2 1


2) для
Код:
1 -2 3 0 4
ответом будет ли
Код:
1 0 3 -2 4
?
Кто умер, но не забыт, тот бессмертен.
Лао-Цзы.
Aleksandr H. вне форума Ответить с цитированием
Старый 04.11.2021, 16:43   #3
Viol_let
Новичок
Джуниор
 
Регистрация: 03.11.2021
Сообщений: 2
По умолчанию

Цитата:
Сообщение от Aleksandr H. Посмотреть сообщение
1)Каким должен быть ответ для таких массивов?
Код:
1 0 0 0 -2
Код:
1 0 0 -2 1


2) для
Код:
1 -2 3 0 4
ответом будет ли
Код:
1 0 3 -2 4
?
нет не будет
Viol_let вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Задача в VBA Excel gedice Фриланс 2 03.06.2016 22:43
Работа с одномерным массивом в Excel VBA. Вот задачка ,решенная мною. id50882902 Помощь студентам 0 08.12.2014 21:18
Задача с массивом (VBA) mad_moon Microsoft Office Excel 9 16.05.2011 09:40
Задача с массивом (VBA) mad_moon Помощь студентам 0 08.05.2011 14:19
VBA Excel задача Slicker Microsoft Office Excel 2 04.11.2008 14:06