На пошлых занятиях мы разобрали алгоритмы ввода, задания и вывода массивов. Сегодня рассмотрим основные задачи обработки массивов.
Задачи:
Найти наибольший элемент одномерного массива А8 введенного с клавиатуры.
Найти сумму, произведение всех элементов двумерного массива An x m, заданного случайным образом. Элементы массива находятся в (0;1)
Найти количество четных элементов массива A5, заданного по формуле a[i]=5i2
Для решения первой задачи заведем новую переменную, назовем max. В начале программы положим в max первый элемент массива, а потом, сравнивая все элементы с max, будем класть туда тот, который оказался больше чем max.
Замечание! Первоначально обязательно нужно положить в max элемент массива.
program _;
const n=8;
type vector=array [1..n]of integer;
var a:vector;
I,max:integer;
begin
{алгоритм ввода одномерного массива}
For i:=1 to n do
Begin
Writeln(‘введите а[’,I,’]’);
Readln(a[i]);
End;
{нахождение наибольшего}
max:=a[1] ;
for i:=2 to n do
if a[i]>max then max:=a[i];
writeln('max=',max);
readln;
end.
Для решения второй задачи, необходимо завести две переменные: для суммы-S и для произведения-Р.
program _;
uses crt;
const n=6;
m=3;
var a:array [1..m;1..n] of real ;
I,j:integer;
S,p:real;
Begin
Randomize;
{ задание массива}
For i:=1 to m do
For j:=1 to n do
A[I,j]:=random;
{нахождение суммы}
s:=0;
for i:=1 to m do
for j:=1 to n do
s:=s+a[I,j];
{нахождение произведения}
p:=1;
for i:=1 to m do
for j:=1 to n do
p:=p*a[I,j];
writeln(‘сумма всех элементов =’,s:10:5);
writeln(‘произведение всех элементов =’,p:10:5);
readln;
end.
Для решения задачи необходимо завести переменную, в которой будет лежать количество черных элементов- Kol
program _;
const n=5;
var a:array [1..n] of integer ;
I, kol:integer;
begin
{ задание массива}
For i:=1 to m do
A[I,j]:=5*sqr(i);
{нахождение количества четных}
Kol:=0;
for i:=1 to m do
if a[i] mod 2=0 then kol:= kol+1;
writeln(‘количество четных элементов =’,kol);
readln;
end.
Дома:
Найти минимальный элемент двумерного массива В2х5.
Дан массив А 30. Найти сумму всех четных элементов массива и произведение всех отрицательных.
Найти в массиве А3 х9 количество элементов из (10;20).