Программирование на языке Паскаль Массивы
Определение массива Многие задачи, которые решаются с помощью ЭВМ, связаны с обработкой массивов. Массив - это упорядоченная совокупность однотипных данных, с каждым из которых связан упорядоченный набор целых чисел, называемых индексами. Массив характеризуется именем, размерностью и размером. X(7) = { 0.5; 2; -3; 10.2; 8; 9.9; -8 } Имя массива Размер массива Элементым ассива Индексы
Описание массива Var : array[1..N] of ; Пример Var x: array[1..7] of real; { массив из 7 действительных чисел} a,b: array[1..100] of integer; {массив из 100 целых чисел} st: array[1..25] of string; {массив из 25 строк по 255 символов} Работа с массивами сводится к действиям над его элементами. Для того чтобы указать, какой элемент в данный момент используется достаточно задать его порядковый номер, который приписывается к имени соответствующего массива. Тип элементов массива X[1]=0.5 или X[5]=8
Ввод массива Элементы массива могут быть использованы для вычислений только после того, как их значения будут введены в память ЭВМ. Чаще всего ввод элементов массивов осуществляется с помощью циклического вычислительного процесса. Например: Ниже приведены фрагмент блок-схемы и программа ввода одномерного массива, состоящего из 10 элементов ВВОД A(i) i=1;10;1 Var a:array [1..10] of integer; i: integer; Begin writeln(Введите элементы массива); for i:=1 to 10 do begin write(a[,i:2,]=); readln(a[i]); end; Var a:array [1..10] of integer; i: integer; Begin writeln(Введите элементы массива); for i:=1 to 10 do begin write(a[,i:2,]=); readln(a[i]); end;
Вывод массива Вывод элементов массива осуществляется таким же образом, что и ввод, но вместо слова ввод в блоке "ввод- вывод" пишется слово вывод. Например: Ниже приведены фрагмент блок-схемы и программа вывода одномерного массива, состоящего из 10 элементов ВЫВОД A(i) i=1;10;1 Var a:array [1..10] of integer; i: integer; Begin writeln(Вывод элементов массива); for i:=1 to 10 do begin write(a[,i:2,]=, a[i]:3); end; Var a:array [1..10] of integer; i: integer; Begin writeln(Вывод элементов массива); for i:=1 to 10 do begin write(a[,i:2,]=, a[i]:3); end;
Обработка массива Главной особенностью алгоритмов обработки одномерных массивов является то, что обработка массивов должна производиться поэлементно. По этой причине обработка осуществляется с помощью циклического алгоритма, а в качестве переменной цикла обычно используется индекс элементов.. Пример: Вычислить сумму элементов одномерного массива A, состоящего из 10 целых чисел
Программа program prim; var i, sum: integer; a:array[1..10] of integer; begin writeln(Введите элементы массива); for i:=1 to 10 do begin write(a[,i:2,]=); readln(a[i]); end; sum:=0; for i:=1 to 10 do begin sum:=sum+a[i]; end; writeln(сумма равна:,sum:4); readln; end. program prim; var i, sum: integer; a:array[1..10] of integer; begin writeln(Введите элементы массива); for i:=1 to 10 do begin write(a[,i:2,]=); readln(a[i]); end; sum:=0; for i:=1 to 10 do begin sum:=sum+a[i]; end; writeln(сумма равна:,sum:4); readln; end.
Задачи 1 Ввести массив А(8) состоящий из положительных и отрицательных целых чисел. Вывести сначала все положительные числа массива А, а затем все отрицательные. Пример: Введите элементы массива: А[1]=-2 А[2]=5 А[3]=-10 А[4]=-16 А[5]=0 А[6]=-7 А[7]=10 А[8]=4 Положительные элементы: Отрицательные элементы:
Задачи 2 Ввести массив А(8) состоящий из целых положительных чисел. Вывести все элементы массива А в обратном порядке. Пример: Введите элементы массива: А[1]=2 А[2]=5 А[3]=10 А[4]=16 А[5]=0 А[6]=7 А[7]=10 А[8]=4 Массив в обратном порядке: