КАТЕГОРИИ: Архитектура-(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) |
Обработка одномерных массивов. Вывод элементов массива
Вывод элементов массива Ввод элементов массива Описание массивов Массивы одномерные Операции с индексированными переменными Массив – это поименованный набор однотипной информации. Массив объединяет элементы одного типа данных. Всему набору данных присваивают общее имя – имя массива. Каждый элемент массива определяется с помощью индекса, определяющего место этого элемента в общем наборе. Данные в массиве сохраняются, как и в случае использования обычных неиндексированных переменных, только до конца работы программы. Характеристики массива: тип – общий тип всех элементов массива; размерность (ранг) – количество индексов массива; диапазон изменения индексов – определяет количество элементов в массиве. Вектор (одномерный массив) – это массив, в котором элементы нумеруются одним индексом. Для одномерного массива: var a: array[1…n] of <тип>; где a – имя массива; n – максимальное количество элементов массива; <тип> – тип элементов массива. Например: var mas: array [1…10] of real; begin ... Описан массив mas, содержащий 10 элементов вещественного типа. Каждый элемент массива определяется с помощью индекса, стоящего справа от имени в квадратных скобках. a [i], a [i+2], a [9] Индекс может быть переменной, константой, арифметическим выражением целого типа. Размер массива должен быть задан в явном виде (как в предыдущем фрагменте), или через const. Например: const n = 10; var mas: array [1…n] of real; begin … … for i:=1 to n do readln(a[ i ]); … Каждое прохождение через цикл соответствует вводу одного элемента массива. … for i:=1 to n do writeln(a[ i ]); … Каждое прохождение через цикл соответствует выводу одного элемента массива. Рассмотрим типовые задачи обработки одномерных массивов. Задача. Составить программу подсчета суммы и произведения элементов одномерного массива вещественных чисел. Таблица идентификаторов
program mas_1; uses crt; var a: array [1..100] of real; n, I: integer; p, s: real; begin clrscr; {подготовить переменные для суммы и произведения} s: = 0; p: =1; writeln ('введите размер массива n<=100'); readln (n); writeln ('введите элемент массива'); for i:=1 to nk do readln (a[i]); for i:=1 to nk do begin s:= s + a[ i ]; p:= p * a[ i ]; end; writeln ('Сумма = ',s:8:3,'Произведение =',p:8:3); readln; end. При накапливании суммы переменную необходимо обнулить, а при накапливании произведения – присвоить 1. Задача. Дан массив a(n). Найти максимальный элемент массива и определить его номер. Таблица идентификаторов
program mas_2; var a: array [1..100] of real; i,n,nmax: integer; max: real; begin writeln ('введите размер массива n<=100'); readln (n); writeln ('введите элементы массива'); for i:=1 to n do readln (a[ i ]); {за максимальный принимается первый элемент массива} max:=a[1]; nmax:=1; for i:=1 to n do If a[i]>max then begin max:=a[i]; nmax:=i; end; writeln ('max =', max, ' N=', nmax); readln; end. Задача. Задан массив целых чисел. Отсортировать элементы одномерного массива по возрастанию. Существует много способов сортировки элементов массива Таблица идентификаторов
program mas_3; uses crt; var a: array [1..100] of integer; f, n, i, p: integer; begin clrscr; writeln ('введите размер массива n<=100'); readln (n); writeln ('введите элементы массива'); for i:=1 to n do readln (a[i]); repeat f:=0; for i:=1 to n-1 do if a[ i ]>a[i+1] then begin p:=a[ i ]; a[ i ]:=a[i+1]; a[i+1]:=p; f:=1; end; until f=0; for i:=1 to n do writeln (a[ i ]); readln; end. В данном алгоритме используются вложенные циклы. Внутренний цикл (for…to…do) – позволяет один раз пройтись по массиву, сравнивая соседние элементы. В случае, если предыдущий элемент (a[ i ]) окажется больше последующего (a[i+1]), элементы меняются местами через дополнительную переменную p. Внешний цикл(repeat…until) – повторяется до тех пор, пока массив не будет упорядочен. В программе применяется переменная – флажок. f =1 – признак того, что два соседних элемента менялись местами, массив еще не упорядочен. f =0 – признак того, что массив упорядочен.
Дата добавления: 2014-12-27; Просмотров: 1374; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |