Способы ввода данных в массив
1) С помощью генератора случайных чисел: program primer_1; var i: integer; r: array [1..10] of integer; begin for i:=1 to 10 do begin r[i]:=random(100); writeln(r[i]); end; end. В этом примере массив из 10 элементов заполнен случайными числами из интервала [0; 99] и выведен на экран компьютера. 2) По формуле: program primer_2; var i:integer; a: array [1..10] of real; begin for i:=1 to 10 do begin a[i]:=sin(i)*sqr(i); writeln(a[i]); end; end. В этом примере массив из 10 чисел заполнен значениями, вычисляемыми по формуле a[i]:=sin i *i2 и все элементы массива выведены на экран компьютера.
3) С клавиатуры: program primer_3; var i:integer; a: array [1..10] of real; begin for i:=1 to 10 do begin write (‘введи’, i, ‘элемент массива’); readln (a[i]); end; end. В этом примере исходные данные вводятся в массив из 10 элементов во время работы программы. Билет № 13 1. Массивы. Одномерные массивы в Pascale: поиск суммы и количества элементов, удовлетворяющих данному условию. Примеры. Массив - набор конечного числа элементов одинакового типа, объединенных общим именем. Каждое значение в массиве называется элементом. Номер элемента в списке называется индексом. Если индекс один, то массив одномерный. Размер – количество элементов в массиве. При работе с массивами придерживаются следующей схемы:
Поставленная в условии задача решается на этапе обработки элементов массива. Все элементы массива перебираются в цикле, где происходит их сравнение, или изменение, или поиск нужного элемента, или вычисление суммы или количества элементов или другие необходимые операции. Рассмотрим задачи поиска суммы и количества элементов, удовлетворяющих данному условию. Пусть a – данный массив, n – его размер, k – счётчик индексов. Нахождение количества элементов по условию: Общий вид: z:=0; for k:=1 to n do if <условие> then z:=z+1; Вычисление суммы всех элементов массива: Общий вид: s:=0; for k:=1 to n do s:=s+a[k]; Вычисление суммы элементов массива, удовлетворяющих условию: Общий вид: s:=0; for k:=1 to n do if <условие> then s:=s+a[k]; Пример: найти сумму и количество чётных элементов массива. program primer_1; var i, s, z: integer; a: array [1..100] of integer; {объявление массива a из 100 чисел}; begin {заполнение массива случайными числами от 0 до 499 и вывод его на экран}; for i:=1 to 100 do begin a[i]:=random(500); write (a[i], ‘ ‘); end; writeln; {нахождение s – суммы чётных элементов и z – количества чётных элементов}; z:=0; s:=0; for i:=1 to 10 do if a[i] mod 2 =0 then begin z:=z+1; s:=s+a[i]; end; {вывод результатов}; write (‘в массиве’, z, ‘чётных чисел. Их сумма равна’,s) end.
|