Randomize;
For i: =1 to 10 do begin A[i]: =random(200)-100; End;
При запуске программы на выполнение элементы массива получат случайные значения при помощи генератора случайных чисел Random в интервале [-100; 100[.
Вывод значений элементов массива на экран. Осуществляется при помощи цикла. Перед выводом лучше очистить экран командой ClrScr. Вывод одномерного числового массива на экран можно осуществлять в строчку или столбик. Вывод значений элементов одномерного массива на экран: ClrScr; { очищение экрана } For i: =1 to 10 do begin Write(A[i]: 5); { вывод элементов массива в строчку, на каждый элемент отводится 5 позиций} End;
ClrScr; { очищение экрана } For i: =1 to 10 do begin Writeln(A[i]); { вывод элементов массива в столбик } End;
Обработка массивов обычно связана с подсчетом суммы, произведения элементов массива, всех или выборочно, с поиском максимального или минимального элемента, подсчетом количества положительных, отрицательных, четных, нечетных либо каких-то еще элементов массива. Возможны также преобразования массивов: перестановка элементов, сдвиг элементов и т. д. Обработка массивов осуществляется при помощи циклов.
Задача 8.1. Задать одномерный числовой массив А [10] из целых чисел. Определить сумму и количество отрицательных элементов массива.
Математическая формулировка задачи: Чтобы определить сумму и количество отрицательных элементов массива, нужно сначала заполнить массив некоторыми числами, а затем просмотреть массив сначала, от первого элемента до последнего (в цикле). Каждый элемент нужно проверить – если он окажется отрицательным (соответствующим нашему критерию), то его нужно добавлять в сумму, а если не отрицательным – то не нужно добавлять в сумму. Количество элементов, соответствующих какому-либо критерию, в данном случае отрицательных по значению, подсчитывается при помощи специальной переменной. До подсчета она равна нулю, и увеличивается на 1 каждый раз, когда найден нужный (отрицательный) элемент. Текст программы к задаче 8.1: Program Ex_8_1; Uses Crt; Type Mas = array [1..10] of integer; { объявляем тип массив из 10 целых чисел } Var A: Mas; { переменная A типа массив } S: real; { сумма отрицательных элементов массива } i: integer; { индексы массива } k: integer; { количество отрицательных элементов массива } Begin ClrScr; { очищение экрана } Textcolor(1); { установим цвет текста синий } Randomize; For i: =1 to 10 do begin A[i]: =random(200)-100; Writeln(A[i]); { вывод элементов массива в столбик } End; S: =0; k: =0; For i: =1 to 10 do begin If A[i]< 0 then begin S: =S+A[i]; k: =k+1; End; End; Writeln; { перевод строки } Textcolor(2); { установим цвет текста зеленый} Writeln(‘Сумма отрицательных элементов массива ’, S); Writeln(‘Количество отрицательных элементов массива ’, k); Readln; End.
|