Шаблон решения задач по теме Массивы в Pascal
- Поиск минимального (максимального)
элемента массива:
const n=10;
var a:array[1..n] of integer;
min (max),i:integer;
begin
for i:=1 to n do
begin
a[i]:=random(20);
Write(a[i],' ');
end;
min (max):=a[1];
for i:=2 to n do
if a[i]<min a[i]>(max)then
min:=a[i];
Writeln('Min(max) ',min(max));
end.
- Найти номер наименьшего элемента в
массиве:
…
min:=a[1];
For i:=2 to n do
If a[i]< min then
begin
min:=a[i];
num:=i;
end;
- Нахождение суммы (произведения)
элементов массива:
…
s:=0 s:=1;
for i:=1 to n do
begin s:=s+a[i] s*a[i];
end
write (s);
end.
- Сумма элементов массива с четными
номерами:
…
s:=0;
For i:=1 to n do
if i mod 2 = 0 then s:=s+a[i];
end;
writeln(‘сумма элементов с четными номерами: ‘,s);
End.
- Среднее арифметическое элементов
массива:
…
s:=0;
For i:=1 to n do
s:=s+a[i];
end;
sred:=s/n;
writeln(‘среднее арифметическое элементов: ‘,s);
End.
- Произведение элементов с четными
номерами, которые превосходят некоторое число t:
…
P:=1;
For i=1 to n do
begin
if (i mod 2 = 0)
and (a[i]>t) then P=P*a[i];
end;
Writeln(‘Произведение элементов с
четными номерами, превосходящие число t:’, P);
End.
- Подсчитать количество нечетных
элементов:
…
k:=0;
For i:=1 to n do
begin
Write(‘a[‘,i,’]=’); readln
(a[i]);
if a[i] mod 2<>0 then
k:=k+1;
end;
Writeln(‘количество четных элементов:
’, k);
end.
- Среднее арифметическое элементов
массива, состоящего из n чисел, которые
превышают по величине число С;
…
S:=0; K:=0;
For i:=1 to 10 do
begin
If a[i]>C then
begin
S:=S+a[i]; K:=K+1; end;
end;
sred:=S/k;
Writeln(‘среднее арифметическое
чисел, превосходящих ‘,C,’ равно ‘,sred);
End.
- Поменять местами соседние элементы;
Var
n, i, c : integer;
a : array [1..n] of integer;
begin
read (n);
for i := 1 to n do read (a[i]);
for i := 1 to n div 2 do
begin
c := a[i*2];
a[i*2] := a[i*2-1];
a[i*2-1] := c;
end;
for i := 1 to n do
write (a[i], ' ');
end.
- Сформировать новый массив В, состоящий
из четных элементов массива А:
Var a: array[1..n] of integer;
b: array[1..n] of integer;
kol, n, i, k: integer;
Begin
kol:=0; k:=0;
For i:=1 to n do
begin
write(‘a[‘,i,’]=’);
readln (a[i]);
if a[i] mod 2=0
then
begin
k:=k+1; b[k]:=a[i]; kol:=kol+1;
end;
if kol=0
then writeln(‘четных элементов нет’) else
for k:=1 to
kol do write(‘b[‘,k,’]=’,b[k]);
end;
Оставьте свой комментарий
Авторизуйтесь, чтобы задавать вопросы.