p:=1;
For i:=1 to 10 do if a[i] mod 2 =0 then p:=p*a[i];
Writeln(p);
Текст программы:
Program z5;
Var a:array [1..10] of integer;
i, p:integer;
begin
for i:=1 to 10 do readln(a[i]);
p:=1;
for i:=1 to 10 do if a[i] mod 2 =0 then p:=p*a[i];
writeln(p)
end.
Пример 3. Найти количество элементов, принадлежащих промежутку (2; 10].
Введем переменную k, отвечающую за количество нечетных элементов. В данном случае перебираем все элементы массива и если находим элемент из промежутка (2; 10], добавляем к переменной k единицу (то есть мы указываем, что найден еще один элемент массива, удовлетворяющий условию задачи).
Соответствующий фрагмент программы:
k:=0;
for i:=1 to 10 do if (a[i]>2)and(a[i]<=10) then k:=k+1;
writeln(k)
Текст программы:
Program z6;
Var a:array [1..10] of integer;
i, k:integer;
begin
for i:=1 to 10 do readln(a[i]);
k:=0;
for i:=1 to 10 do if (a[i]>2)and(a[i]<=10) then k:=k+1;
writeln(k)
end.
Пример 4. Найти минимальный элемент в массиве и его порядковый номер (то есть его нахождение в массиве).
Введем дополнительную переменную, допустим k, в которой хранится номер минимального элемента. То есть изначально за минимум возьмем первый элемент массива, и укажем, что номер минимального элемента - первый (Min:=a[1]; k:=1;). Затем перебираем все оставшиеся элементы массива, (for i:=2 to 10 do) и, как только найдем элемент, меньший того элемента, который на данный момент является минимальным элементом среди предыдущих элементов массива (if a[i]<min then) , обозначаем этот элемент за минимум (min:=a[i]) и указываем, что изменился и номер минимального элемента (k:=i).
Min:=a[1]; k:=1;
For i:=1 to 10 do if a[i]<min then begin
Min:=a[i];
K:=i;
end;
Текст программы:
Program z7;
Var a:array [1..10] of integer;
i, min, k:integer;
begin
for i:=1 to 10 do readln(a[i]);
Min:=a[1]; k:=1;
For i:=1 to 10 do if a[i]>max then
begin
min:=a[i];
k:=i;
end;
end.
Пример 5. На протяжении всего апреля каждые сутки в полдень измеряется температура в городе. Определить среднюю температуру морозных дней в апреле.
Составим программу, используя массивы. Фактически нужно ввести массив, состоящий из тридцати элементов, найти в нем сумму и количество отрицательных элементов, после чего найти среднее значение.
Program z8;
Var t:array [1..30] of real;
sum, srt: real;
i, k: integer;
Begin sum:=0;
k:=0;
for i:=1 to 30 do
Begin write(`Введите температуру за `, i, `-е апреля `);
readln(t[i]);
end;
for i:=1 to 30 do If t[i]<0 then
Begin sum:=sum+t[i];
k:=k+1;
end;
srt:=sum/k;
writeln(`Средняя температура морозных дней в апреле `,srt:10:2)
end.
Пример 2. В условиях предыдущей задачи определить максимальную температуру за апрель.
Здесь задача сводится к вводу массива и к нахождению в нем максимального элемента.
Program z9;
Var t:array [1..30] of real;
max: real;
i: integer;
Begin for i:=1 to 30 do
Begin write(`Введите температуру за `, i, `-е апреля `);
readln(t[i]);
end;
max:=t[i];
for i:=2 to 30 do If t[i]>max then max:=t[i];
writeln(`Максимальная температура в апреле `,max:10:2)
end.
1.6 Вопросы
1. Как объявлять одномерные массивы в Паскаль?
2.Приведите примеры одномерных массивов.
3. Какие операции можно осуществлять над всем массивом сразу?
4. Как обращаться к элементам массива?
5. Как найти минимальный элемент в массиве?
1.7 Задания
Составить программу для решения задачи, используя одномерные массивы:
Вариант 1.
1. Вычислить сумму элементов массива X(6), которые принадлежат отрезку [0; 1].
2. Каждый день на протяжении месяца берут пробы почвы на содержание перегноя. Найти максимальное содержание перегноя за месяц.
Вариант 2.
1. В массиве целых чисел M(8) вычислить среднее арифметическое положительных элементов.
2. Есть данные о глубине океана в 20 его точках. Найти минимум из этих величин.
Вариант 3.
1. В массиве целых чисел X(7) найти количество элементов, которые лежат в отрезке [-1; 1].
2. По данным за месяц о суточной температуре воздуха в местности выяснить, сколько было засушливых дней? (т. е. средняя температура за день больше 20°С).
Вариант 4.
1. Определите максимальный элемент массива B(5) и его порядковый номер.
2. По данной плотности населения в 15 точках местности вычислить среднюю плотность населения местности.
Вариант 5.
1. В массиве целых чисел C(6) найти произведение элементов, больших семи.
2. Измерили 15 раз процент содержания минерала в почве. Выяснить, сколько раз концентрация минерала в почве оказалась менее 10 процентов?
Вариант 6.
1. В массиве целых чисел X(8) подсчитать сумму отрицательных элементов.
2. Дано население во всех 18 городах страны. Вычислить общее население в стране.
Вариант 7.
1. В массиве целых чисел A(8) найти сумму положительных элементов.
2. По известным данным рождаемости в городе за каждый месяц выяснить, сколько детей родилось за год?
Вариант 8.
1. В массиве целых чисел B(10) найти количество элементов, расположенных в пределах [0; 1] .
2. На протяжении месяца каждый день измерялась скорость ветра в определенной местности. Выяснить максимальную скорость ветра за месяц.
Вариант 9.
1. В массиве целых чисел A(8) найти количество нулевых элементов.
2. Известно население 10 населенных пунктов (в тыс.). Сколько из них являются городами? (т. е. более 40 тыс. чел.).
Вариант 10.
1. Вычислить произведение отрицательных элементов массива целых чисел A(8).
2. Выяснить, сколько в группе совершеннолетних человек, если известен возраст каждого члена группы из 25 человек? (Совершеннолетним считается человек, возраст которого не менее 18 лет)
Вариант 11.
1. Найти в массиве целых чисел A(10) сумму элементов, меньших 7.
2. Глубина реки измерена в 16 местах. Может ли по ней проплыть судно подводной высотой 4 м? (т. е. минимальная глубина должна быть более 4 м)
Вариант 12.
1. В массиве целых чисел A(5) найти произведение нечетных элементов.
2. Каждый день на протяжении всего месяца измеряется содержание кислорода в атмосфере (в процентах). Определить минимальную за месяц концентрацию кислорода в воздухе.
2 ДВУМЕРНЫЕ МАССИВЫ
2.1 Что такое двумерный массив
Двумерный массив – это массив, каждый элемент которого, в свою очередь также является массивом. Каждый элемент двумерного массива определяется двумя индексами – номером элемента в первом внешнем массиве и номером элемента во втором внутреннем массиве.
Двумерный массив можно представить в виде таблицы, элементы которого расположены по строкам и столбцам. Первый индекс элемента – это номер строки, второй – номер столбца (таблица 1).
Таблица 1. Матрица
1-й столбец | 2-й столбец | … | m-й столбец | |
1-я строка | a11 | a12 | … | a1m |
2-я строка | a21 | a22 | … | a2m |
… | … | … | … | … |
n-я строка | an1 | an2 | … | anm |
То есть, элемент a35 располагается на пересечении 3-й строки и 5-го столбца, элемент aij – на пересечении i-й строки и j-го столбца.
|
Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 |


