Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
0 / 0 / 0
Регистрация: 28.10.2019
Сообщений: 4

Определить есть ли в массиве три подряд одинаковых элемента

28.10.2019, 22:04. Показов 1179. Ответов 10
Метки vba (Все метки)

Студворк — интернет-сервис помощи студентам
Дали задание немного не понимаю как это делается(Не разбераюсь в VBA). Помогите Пожалуйста
Задачки:
1 Определить есть ли в массиве три подряд одинаковых элементов.
2 Найдите сумму элементов массива после максимального.
3 Найдите какая сумма элементов больше до или после максимального

Срочно
Спасиюо на будущие)
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
28.10.2019, 22:04
Ответы с готовыми решениями:

Определить, есть ли в массиве три подряд идущих одинаковых элемента
Дан одномерный массив A, содержащий целые числа. Определить, есть ли в нем три подряд идущих одинаковых элемента. Подскажите пожалуйста,...

Есть ли в одномерном массиве три подряд одинаковых элемента?
Если в одномерном массиве есть три подряд идут одинаковых элемента, то переменной r присвоить значение истина.

Проверить, есть ли в данном массиве три подряд идущих одинаковых элемента
Дан одномерный массив целых. Если в данном массиве имеются три подряд идущих одинаковых элемента, то переменной r присвоить значение...

10
28.10.2019, 23:11

Не по теме:

Цитата Сообщение от VladSnows Посмотреть сообщение
Срочно
А сам спать пошёл ?

0
0 / 0 / 0
Регистрация: 28.10.2019
Сообщений: 4
29.10.2019, 21:55  [ТС]
Дали задание, немного не понимаю как это делается (Не разбераюсь в VBA). Помогите Пожалуйста
Условие "Определить есть ли в массиве три подряд одинаковых элемента"
Не знаю даже как вообразить.
0
 Аватар для Pro_grammer
6807 / 2839 / 527
Регистрация: 24.04.2011
Сообщений: 5,308
Записей в блоге: 10
30.10.2019, 08:31
Цитата Сообщение от VladSnows Посмотреть сообщение
Условие "Определить есть ли в массиве три подряд одинаковых элемента"
Видать не спится....
При заполнении датчиком случайных чисел мало вероятно, что выйдет 3 одинаковых элемента подряд.
Потому в коде для проверки есть строка, где это сделано.

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
Dim x(1 To 100) As Integer, n As Integer, Y As Boolean
Y = False
For n = 1 To 100
    x(n) = Int(Rnd * 100 + 1)
Next n
 
' Для проверки раскомментировать сл.стр.!
 'x(10) = 10: x(11) = 10: x(12) = 10
 
For n = 1 To UBound(x) - 2
    If x(n) = x(n + 1) And x(n) = x(n + 2) Then
       Y = True
       Exit For
    End If
 
Next n
If Y = True Then
    MsgBox " В массиве ЕСТЬ три подряд одинаковых элемента"
    Else
    MsgBox " В массиве НЕТ 3-х подряд одинаковых элементов"
End If
1
 Аватар для Narimanych
2751 / 1725 / 779
Регистрация: 23.03.2015
Сообщений: 5,449
30.10.2019, 08:36
Pro_grammer,
В принципе можно и без проверки Y
0
Заблокирован
30.10.2019, 08:51
Narimanych, можно вообще без Y
0
 Аватар для Narimanych
2751 / 1725 / 779
Регистрация: 23.03.2015
Сообщений: 5,449
30.10.2019, 09:05
Цитата Сообщение от Остап Бонд Посмотреть сообщение
можно вообще без Y
Можно...
0
 Аватар для Pro_grammer
6807 / 2839 / 527
Регистрация: 24.04.2011
Сообщений: 5,308
Записей в блоге: 10
30.10.2019, 11:18
Остап Бонд, Narimanych, конечно можно.
Не стесняйтесь показывать свои версии, обмен опытом одна из задач форума.
0
es geht mir gut
 Аватар для SoftIce
11274 / 4760 / 1183
Регистрация: 27.07.2011
Сообщений: 11,439
30.10.2019, 11:33
Цитата Сообщение от Pro_grammer Посмотреть сообщение
Не стесняйтесь показывать свои версии
Да они прикалываются оба...
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Dim x(1 To 100) As Integer, n As Integer 
 
For n = 1 To 100
    x(n) = Int(Rnd * 100 + 1)
Next n
 
' Для проверки раскомментировать сл.стр.!
 '          x(11) = x(10): x(12) = x(10)
 
For n = 1 To UBound(x) - 2
    If x(n) = x(n + 1) And x(n) = x(n + 2) Then
       MsgBox " В массиве ЕСТЬ три подряд одинаковых элемента"
       Exit sub
    End If
Next n
 
MsgBox " В массиве НЕТ 3-х подряд одинаковых элементов"
0
Заблокирован
30.10.2019, 11:45
Цитата Сообщение от Остап Бонд Посмотреть сообщение
можно ... без Y
Цитата Сообщение от Pro_grammer Посмотреть сообщение
Не стесняйтесь показывать
1 -
Visual Basic
1
2
3
4
5
6
7
For n = 1 To UBound(x) - 2
    If x(n) = x(n + 1) And x(n) = x(n + 2) Then
       MsgBox " В массиве ЕСТЬ три подряд одинаковых элемента"
       Exit SUB 'For
    End If
Next n
MsgBox " В массиве НЕТ 3-х подряд одинаковых элементов"
2 -
Visual Basic
1
2
3
4
5
6
7
8
9
10
For n = 1 To UBound(x) - 2
    If x(n) = x(n + 1) And x(n) = x(n + 2) Then
       Exit For
    End If
Next n
If n <  UBound(x) - 1 Then
    MsgBox " В массиве ЕСТЬ три подряд одинаковых элемента"
Else
    MsgBox " В массиве НЕТ 3-х подряд одинаковых элементов"
End If
Цитата Сообщение от VladSnows Посмотреть сообщение
Спасиюо на будущие)
Наздюровъэ.
0
 Аватар для Pro_grammer
6807 / 2839 / 527
Регистрация: 24.04.2011
Сообщений: 5,308
Записей в блоге: 10
30.10.2019, 12:51
Exit SUB сразу нет, особенно если задача не единственная, нужно ещё суммы искать.
Проверять n мысль интересная, но по сути ни чем не отличается от проверки флага Y.
Код с флагом лично мне кажется как то более правильный, более универсальный что ли?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
30.10.2019, 12:51
Помогаю со студенческими работами здесь

Одномерный массив. Есть ли в одномерном массиве три подряд идущих одинаковых элемента
помогите пожалуйста решить задачу. Спасибо заранее Если в одномерном массиве имеются три подряд идущих одинаковых элемента, то переменной...

Три одинаковых элемента подряд в массиве и наибольшее повторение этого числа
Дан одномерный массив целых. Если в данном массиве имеются три подряд идущих одинаковых элемента, то переменной r присвоить значение...

Узнать есть ли в массиве подряд 3 одинаковых элемента
Дан массив из 7 элементов. Узнать есть ли в нем подряд 3 одинаковых элемента.

Если в одномерном массиве имеются три подряд идущих одинаковых элемента, то переменной R присвоить значение 1
1)Если в одномерном массиве имеются три подряд идущих одинаковых элемента,то переменной R присвоить значение 1.количество элементов-10 ...

Если в одномерном массиве имеются три подряд идущих одинаковых элемента, то переменной r присвоить значение истина.
Тема Одномерные массивы Если в одномерном массиве имеются три подряд идущих одинаковых элемента, то переменной r присвоить значение...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru