Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.63/19: Рейтинг темы: голосов - 19, средняя оценка - 4.63
1 / 1 / 0
Регистрация: 13.03.2013
Сообщений: 15

Задан массив, содержащий несколько нулевых элементов. Сжать его, выбросив эти элементы

13.03.2013, 10:41. Показов 3810. Ответов 18
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите решить)
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
13.03.2013, 10:41
Ответы с готовыми решениями:

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

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

Задан массив, содержащий несколько нулевых элементов. Сжать его, выбросив эти элементы
Помогите, пожалуйста...

18
15155 / 6428 / 1731
Регистрация: 24.09.2011
Сообщений: 9,999
13.03.2013, 11:02
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
Private Sub Command1_Click()
Dim i&, j&
'Создание и вывод массива
ReDim a(0 To 9) As Long
Print "Массив до:"
For i = 0 To 9
    a(i) = -2 + Int(Rnd() * 5)
    Print a(i);
Next
'удаление нулевых
For i = 0 To 9
    If a(i) <> 0 Then a(j) = a(i): j = j + 1
Next
ReDim Preserve a(j - 1)
'вывод массива
Print vbLf; "Массив после:"
For i = 0 To j - 1
    Print a(i);
Next
Print
End Sub
2
1 / 1 / 0
Регистрация: 13.03.2013
Сообщений: 15
13.03.2013, 11:15  [ТС]
Нужно ввести случайные числа, что-то наподобие (5 0 21 0 6 7 0 1)
0
15155 / 6428 / 1731
Регистрация: 24.09.2011
Сообщений: 9,999
13.03.2013, 14:34
Если хотите вводить вручную, надо изменить строку 7. Как - подумайте сами, почитайте методичку.
0
1 / 1 / 0
Регистрация: 13.03.2013
Сообщений: 15
20.03.2013, 08:56  [ТС]
Ребят помогите дописать, а то в голову что-то ничего не лезет((
0
 Аватар для IUMag
59 / 56 / 37
Регистрация: 02.04.2012
Сообщений: 131
20.03.2013, 09:31
Лучший ответ Сообщение было отмечено The trick как решение

Решение

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
Private Sub Command1_Click()
Dim i&, j&
'Ñîçäàíèå è âûâîä ìàññèâà
ReDim a(0 To 9) As Long
Print "Ìàññèâ äî:"
For i = 0 To 9
 a(i) = InputBox("Ââåäèòå ÷èñëà")
 Print a(i);
Next
'óäàëåíèå íóëåâûõ
For i = 0 To 9
    If a(i) <> 0 Then a(j) = a(i): j = j + 1
Next
ReDim Preserve a(j - 1)
'âûâîä ìàññèâà
Print vbLf; "Ìàññèâ ïîñëå:"
For i = 0 To j - 1
    Print a(i);
Next
Print
End Sub
1
1 / 1 / 0
Регистрация: 13.03.2013
Сообщений: 15
20.03.2013, 09:34  [ТС]
не соответствие типов выдаёт на a(i) = InputBox("Введите числа")
0
 Аватар для IUMag
59 / 56 / 37
Регистрация: 02.04.2012
Сообщений: 131
20.03.2013, 09:55
Какие вы числа пишите?
Миниатюры
Задан массив, содержащий несколько нулевых элементов. Сжать его, выбросив эти элементы  
1
 Аватар для Апострофф
9908 / 3928 / 742
Регистрация: 11.10.2011
Сообщений: 5,908
20.03.2013, 10:09
Visual Basic
1
7:  a(i) = InputBox("a(" & i & ") = ") 'и вводите числа ПО ОДНОМУ!
1
1 / 1 / 0
Регистрация: 13.03.2013
Сообщений: 15
20.03.2013, 10:30  [ТС]
Спасибо большое господа. Выручили!
0
0 / 0 / 0
Регистрация: 16.09.2013
Сообщений: 5
17.09.2013, 11:07
Доброго времени суток Господа.
Есть вопросик по данной теме, а именно:
Есть динамический массив к примеру скажем 15 (чтоб легче считать было), необходимо в "центре" (я это понял как центр выделяется вручную, любой) массива заменить все нулевые значения на одно вводимое через inputbox значение.
Задача выглядит так: Дан N-элементный одномерный массив "T". В данном массиве заменить значения стоящих посередине "B" нулевых элементов на число "U"
Заранее благодарю...
0
6644 / 1511 / 169
Регистрация: 09.01.2010
Сообщений: 4,298
17.09.2013, 12:02
Цитата Сообщение от eXc200 Посмотреть сообщение
В данном массиве заменить значения стоящих посередине "B" нулевых элементов на число "U"
вот тут надо уточнить
1 берется подмассив из В элементов от цетра и в нем нули меняем на U
2 ищется В нулевых элементов от центра и они заменяются на 0
0
0 / 0 / 0
Регистрация: 16.09.2013
Сообщений: 5
17.09.2013, 16:32
Я подразумеваю всё таки 2 вариант, без подмассива. Поиск в самом массиве нулевых, и замена их на число через inputbox.

Добавлено через 4 часа 9 минут
Спасибо за скорый ответ на помощь.
Разобрался сам вот что получилось:
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
Private Sub Command1_Click()
Dim i&, j&
'создание и вывод массива
ReDim a(0 To 9) As Long
Randomize
Print vbLf; "Массив до:"
For i = 0 To 9
a(i) = Rnd * 2
  Print a(i);
Next
'замена нулевых значений
ReDim Preserve a(i)
j = Val(InputBox("На какое число будем менять нулевые значения ?", "Ввод данных"))
For i = 0 To 9
If a(i) = 0 Then a(i) = j
Next i
 
 
'Вывод массива
Print vbLf; "Массив после:"
For i = 0 To 9
Print a(i);
Next
Print
End Sub
0
6644 / 1511 / 169
Регистрация: 09.01.2010
Сообщений: 4,298
17.09.2013, 16:44
Цитата Сообщение от eXc200 Посмотреть сообщение
Разобрался сам вот что получилось:
это правильно

а где
Цитата Сообщение от eXc200 Посмотреть сообщение
значения стоящих посередине "B"
Вы заменили все нули

и для чего ReDim Preserve a(i)
0
0 / 0 / 0
Регистрация: 16.09.2013
Сообщений: 5
17.09.2013, 16:56
Стесняюсь ответить
Буду для начала искать оператора который выделяет центр, вроде как можно использовать mid
в пятницу начал изучать VB6, для меня это уже прогресс
Хочется конечно же, попросить чтобы помогли.
Поможете люди добрые ?

ReDim Preserve a(i) (не знаю, он в самом начале присутствовал) я за основу саму задачку взял (см. выше 1 стр.) и переделал ее чуток
0
6644 / 1511 / 169
Регистрация: 09.01.2010
Сообщений: 4,298
17.09.2013, 19:51
Цитата Сообщение от eXc200 Посмотреть сообщение
в пятницу начал изучать VB6, для меня это уже прогресс
согласен
тогда прежде, чем писать код, давайте проанализируем задачу.
Задача выглядит так:
Дан N-элементный одномерный массив "T".
пусть массив Т содержит 15 эл.

В данном массиве заменить значения стоящих посередине
счет для n=15 начнется с 8, т.е. 8; 7-8-9; 6-7-8-9-10, и т.д.
"B" нулевых элементов
пусть В=2 и каким то образом 7,8,9 элементы равны 0
тогда и 7-8 как похожи бы на В=2 элемента "стоящих посередине"
и 8-9 как похожи бы на В=2 элемента "стоящих посередине"
вопрос: какие из них "правильные", т.е. какие из них надо заменить на число "U"

ответа однозначного нет
0
0 / 0 / 0
Регистрация: 16.09.2013
Сообщений: 5
18.09.2013, 09:50
Цитата Сообщение от eXc200 Посмотреть сообщение
Дан N-элементный одномерный массив "T". В данном массиве заменить значения стоящих посередине "B" нулевых элементов на число "U"
Вот такие штуки задают на дом
Цитата Сообщение от gaw Посмотреть сообщение
ответа однозначного нет
Полностью Вас поддерживаю!
0
6644 / 1511 / 169
Регистрация: 09.01.2010
Сообщений: 4,298
18.09.2013, 10:00
может это переводили на русс.язык?
0
0 / 0 / 0
Регистрация: 16.09.2013
Сообщений: 5
18.09.2013, 12:01
Цитата Сообщение от gaw Посмотреть сообщение
может это переводили на русс.язык?
Предполагаете Гугля ? надо будет препода потролить :-D
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
18.09.2013, 12:01
Помогаю со студенческими работами здесь

Массивы. Задан массив,содержащий несколько нулевых элементов. Сжать его выбросив эти элементы.
Задан массив,содержащий несколько нулевых элементов. Сжать его выбросив эти элементы.

Задан массив, содержащий несколько нулевых элементов. Сжать массив, выбросив эти элементы
Тема 3. Одномерные массивы Задан массив, содержащий несколько нулевых элементов. Сжать массив, выбросив эти элементы (дополнительный...

Задан массив, содержащий несколько нулевых элементов
4. Задан массив, содержащий несколько нулевых элементов. Сжать его, выбросив эти элементы. я писал Program arr4; var ...

Задан массив, содержащий N элементов. Упорядочить его элементы в порядке возрастания.
Буду очень признателен, если поможете безрукому... 6. Задан массив, содержащий N элементов. Упорядочить его элементы в порядке...

JavaScript. Дан массив, содержащий несколько нулевых элементов
JavaScript. Дан массив, содержащий несколько нулевых элементов. Сжать его, исключив эти элементы.


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

Или воспользуйтесь поиском по форуму:
19
Ответ Создать тему
Новые блоги и статьи
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru