![]() КАТЕГОРИИ: Архитектура-(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) |
Одномерные массивы. Массивы в языке программирования паскаль
Понятие массива Массивы в языке программирования паскаль
Массив представляет собой упорядоченное множество однотипных элементов. В Турбо Паскале массив описывается переменной сложной структуры. При описании необходимо указать: - способ объединения элементов в структуру; - число элементов; - тип элементов. Общий вид описания массива: <имя массива>: ARRAY [тип–диапазон индексов] OF <тип элементов массива>; Доступ к каждому элементу массива осуществляется с помощью индексов. Тип – диапазон каждого индекса задается левой и правой границами изменения индекса. Число индексов определяют структуру массива: если используется один индекс, то такой массив называется одномерным, если два индекса – двумерным. В общем случае размерность массива может быть произвольной. В математике одномерному массиву соответствует
Описание одномерного массива В Турбо Паскале описание одномерного массива задается следующим образом: <имя массива>: ARRAY [m1 ¼m2] OF < тип элементов>; Индекс одномерного массива определяет порядковый номер элемента в массиве. m1 ¼m2 – диапазон значений индекса. Тип элементов в массиве может быть любым: простым (REAL, INTEGER, CHAR), структурным (ARRAY), строковым (STRING). По описанию массива в памяти компьютера выделяется область последовательных ячеек, в которую при выполнении программы заносятся значения элементов массива. Например, по описанию Var X: array [1¼5] of real; будет выделяться область из пяти последовательных ячеек для записи значений элементов вещественного типа. Индексные переменные Выбор отдельного элемента из массива осуществляется с помощью индексной переменной, которая задается следующим образом:
В качестве индекса используются: - целые константы, например, - целые переменные, например, - индексные выражения, например, Замечание. Индексными выражениями являются арифметические выражения целого типа. Индексная переменная, как и простая, может стаять в левой части оператора присваивания, например:
Ввод-вывод одномерных массивов Ввод-вывод массивов осуществляются поэлементно с помощью оператора цикла FOR, в котором в качестве параметра используется индекс. Пример 1. Организовать ввод с клавиатуры массива:
В разделе описания переменных необходимо задать описание массива и индекса. Var A: array [1¼4] of real; i: integer; В операторной части программы рекомендуется ввод массива организовать в виде диалога, сопроводив ввод соответствующим сообщением на экране. Begin {начало программы} WRITELN (‘Введите массив А’); for i:= 1 to 4 read(a[i]); …………… На клавиатуре набирается: 1.2 5 6.8 14 < Enter >. Пример 2. Организовать вывод массива А на экран таким образом, чтобы все элементы располагались на одной строке экрана. В программе надо записать следующие операторы: for i:= 1 to 4 do write(a[i]:5:1); writeln; Вид выводимого массива на экране: 1.2 5.0 -6.8 14.0 Оператор WRITELN без списка служит для перевода курсора к началу следующей строки. Обработка одномерных массивов При решении задач обработки массивов используют базовые алгоритмы реализации циклических вычислительных процессов: организация счетчика, накопление сумм и произведений, поиск минимального и максимального элементов массива. Задача 1. Организация счетчика. Определить количество элементов заданного целочисленного массива Program OM_1; Var B: array [1… 20] of integer; i, L: integer; Begin writeln(‘Введите массив В’); for i:=1 to 20 do read(b[i]); L:= 0; for i:=1 to 20 do if (b[i] MOD 3) = 0 then L:= L+1; writeln(‘L =’, L); End. Задача 2. Накопление суммы и произведения. Дано целое число
Program ОМ_2; Var Х: array [1… 100] of real; n, i: integer; S, P: real; Begin writeln(‘Введите размер массива n’); read(n); writeln(‘Введите массив Х’); for i:= 1 to n do read(x[i]); S:= 0; P:= 1; for i:= 1 to n do begin S:= S + x[i]; P:= P * x[i]; end; S:= S/n; P:= exp(1/n * ln(P)); writeln(‘S =’, S:6:2); writeln(‘P =’, P:10:2); End. Задача 3. Поиск минимального и максимального элементов массива. Дан вещественный массив Поменять местами минимальный и максимальный элементы массива и вывести массив после обмена. В этой задаче дополнительно надо знать местоположение минимального и максимального элементов, поэтому одновременно с поиском надо запоминать индексы. Введем обозначения: min – минимальный элемент; imin – индекс минимального элемента; max – максимальный элемент; imax – индекс максимального элемента. Program ОМ_3; Var T: array [1… 10] of real; i, imin, imax: integer; min, max: real; Begin writeln(‘Введите массив T’); for i:= 1 to 10 do read(t[i]); min:= +1E6; max:= -1E6; for i:= 1 to 10 do begin if t[i]<min then begin min:= t[i]; imin:= i; end; if t[i]>max then begin max:= t[i]; imax:= i; end; end; t[imin]:= max; t[imax]:= min; for i:= 1 to 10 do write(t[i]:6:2); writeln; End.
Дата добавления: 2014-01-06; Просмотров: 473; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |