Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Создание новых массивов при решении задач




 

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

Пример 9. Дан вещественный массив А(N). Вывести отдельно массив целых чисел (если они есть в исходном массиве) и массив вещественных чисел.

Решение.Для фиксации текущих значений индексов в новых массивах введем счетчик к для массива B и счетчик q для массива D. При нахождении элементов массива соответствующих первому условию задачи увеличим значение к на единицу и присвоим этот индекс первому элементу нового массива B и т.п.

Аналогичная процедура повторяется и при выполнении второго условия задачи, где формируется еще один массив D.

 

Sub primer_9()

Dim A(10), B(10), D(10) As Single

For i = 1 To 10 ' ввод массива

A(i) = Cells(1, i)

Next i

For i = 1 To 10 ' вывод начального массива

Cells(2, i) = A(i)

Next i

к = 0: q = 0 'начальные значения индексов новых массивов

For i = 1 To 10

If Abs(A(i)) - Int(A(i)) = 0 Then

к = к + 1: B(к) = A(i) ' вычисление текущего индекса массива В

Else

q = q + 1: D(q) = A(i) 'запись элемента А(i) в новый массив D

End If

Next i

If к = 0 Then

Cells(3, 1) = "В массиве целых чисел нет"

Else

Cells(3, 1) = "Массив целых чисел B(к))"

For i = 1 To к

Cells(4, i) = B(i)

Next i

End If

If q = 0 Then

Cells(5, 1) = "В массиве дробных чисел нет"

Else

Cells(5, 1) = "Массив вещественных чисел D(q)"

For i = 1 To q

Cells(6, i) = D(i)

Next i

End If

End Sub

 

Результата программы:

 

 




Поделиться с друзьями:


Дата добавления: 2014-10-23; Просмотров: 320; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.008 сек.