|
||||||||||||||||||
АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Примеры алгоритмов обработки массивовПРИМЕР 3.1. Дан массив А состоящий из k целых положительных чисел. Записать все четные по значению элементы массива А в массив В. Решение задачи заключается в следующем. Последовательно перебираются элементы массива А. Если среди них находятся четные, то они записываются в массив В. На рисунке 3.14 видно, что первый четный элемент хранится в массиве А под номером три, второй и третий под номерами пять и шесть соответственно, а четвертый под номером восемь. В массиве В этим элементам присваиваются совершенно иные номера. Поэтому для их формирования необходимо определить дополнительную переменную. В блок-схеме приведенной на рисунке 3.15 роль такой переменной выполняет переменная m. Операция, выполняемая в блоке 2, означает, что в массиве может не быть искомых элементов. Если же условие в блоке 5 выполняется, то переменная m увеличивается на единицу, а значение элемента массива А записывается в массив В под номером m (блок 6). Условный блок 7 необходим для того, чтобы проверить выполнилось ли хотя бы раз условие поиска (блок 5).
ПРИМЕР 3.2. Задан массив Y из n целых чисел. Сформировать массив Z таким образом, чтобы в начале шли отрицательные элементы массива Y, затем положительные и, наконец, нулевые. Блок-схема представлена на рис. 3.16. ПРИМЕР 3.3. Переписать элементы массива X в обратном порядке. Блок-схема представлена на рис. 3.17. Алгоритм состоит в следующем: меняем местами 1-й и n -й элементы, затем 2-й и n -1-й элементы, и т.д. до середины массива (элемент с номером i следует обменять с элементом n+1-i). ПРИМЕР 3.4. Задан массив из n элементов. Сформировать массивы номеров положительных и отрицательных элементов. Блок-схема представлена на рис. 3.18.
ПРИМЕР 3.5. Удалить из массива X, состоящего из n элементов, первые четыре нулевых элемента. Вначале количество нулевых элементов равно нулю (k=0). Последовательно перебираем все элементы массива. Если встречается нулевой элемент, то количество нулевых элементов увеличиваем на 1 (k=k+1). Если количество нулевых элементов меньше или равно 4, но удаляем очередной нулевой элемент, иначе аварийно выходим из цикла (встретился пятый нулевой элемент и дальнейшая обработка массива бесполезна). Блок-схема представлена на рис. 3.19. ПРИМЕР 3.6. Массив целых чисел С состоит из N элементов, найти сумму простых чисел, входящих в него. Идея алгоритма состоит в следующем. Сначала сумма равна 0. Последовательно перебираем все элементы, если очередной элемент простой, то добавляем его к сумме. Блок-схема алгоритма изображена на рис. 3.20.
ПРИМЕР 3.7. Определить есть ли в заданном массиве серии элементов, состоящих из знакочередующихся чисел (рис. 3.21). Если есть, то вывести на экран количество таких серий.
На рис. 3.22 изображена блок-схема решения поставленной задачи. Здесь переменная k - количество элементов, попадающих в серию, kol - количество знакочередующихся серий в массиве.
Рис. 3.22. Блок-схема решения задачи примера 3.7
Поиск по сайту: |
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.004 сек.) |