Const
nn = 50;
var
a: array[1..nn] of integer;
b: array[1..10] of integer; { для номеров минимальных четных }
n, i, km, min, max, t1, t2: integer;
begin
Randomize;
Write('Укажите количество элементов массива (не более 50): ');
Readln(n);
Writeln('Исходный массив');
for i := 1 to n do
begin
a[i] := Random(76) - 43;
Write(a[i]:4);
end;
Writeln;
Writeln('1. Массив со сдвинутыми влево на 2 элементами');
t1 := a[1]; t2 := a[2];
for i := 1 to n - 2 do
begin
a[i] := a[i + 2];
Write(a[i]:4);
end;
a[n - 1] := t1; a[n] := t2;
Writeln(a[n - 1]:4, a[n]:4);
Writeln('2. Минимальные четные элементы массива');
min := 100;
for i := 1 to n do
if (i mod 2 = 0) then
if min > a[i] then begin min := a[i]; km := 1; b[km] := i end
else if min = a[i] then begin km := km + 1; b[km] := i end;
Write('Значение: ', min, ', индексы:');
for i := 1 to km do Write(b[i]:3);
Writeln;
Writeln('3. Поменять местами максимальный и последний элементы массива');
max := -100;
for i := 1 to n do
if max < a[i] then begin max := a[i]; b[1] := i end;
t1 := a[b[1]]; a[b[1]] := a[n]; a[n] := t1;
for i := 1 to n do Write(a[i]:4);
Writeln;
Writeln('4. Найти среднее арифметическое элементов массива');
t1 := 0;
for i := 1 to n do t1 := t1 + a[i];
Writeln('Среднее арифметическое равно ', t1 / n)
end.
<em><u>Тестовое решение:</u></em>
Укажите количество элементов массива (не более 50): 30
Исходный массив
31 -41 -18 -42 -15 -10 -8 -18 -30 21 -6 -43 -32 -18 -30 26 -37 20 29 18 26 21 29 22 -23 -43 29 30 -41 -9
1. Массив со сдвинутыми влево на 2 элементами
-18 -42 -15 -10 -8 -18 -30 21 -6 -43 -32 -18 -30 26 -37 20 29 18 26 21 29 22 -23 -43 29 30 -41 -9 31 -41
2. Минимальные четные элементы массива
Значение: -43, индексы: 10 24
3. Поменять местами максимальный и последний элементы массива
-18 -42 -15 -10 -8 -18 -30 21 -6 -43 -32 -18 -30 26 -37 20 29 18 26 21 29 22 -23 -43 29 30 -41 -9 -41 31
4. Найти среднее арифметическое элементов массива
Среднее арифметическое равно -5.4
255+255+255 для RGB представления цвета в битовой карте
//Pascal ABC.NET v3.0 сборка 1111
//"Школьный" вариант, первая блок-схема
Var
a,b,c:integer;
begin
read(a,b,c);
if (a=b) and (b=c) then writeln('=') else
begin;
if a>b then
if a>c then writeln(a);
if b>a then
if b>c then writeln(b);
if c>a then
if c>b then writeln(c);
end;
<span>end.
//Вариант для любителей оккультизма, вторая блок-схема
begin
var se:=ReadArrReal(3);
if se.Sum()/se.Average()=se.Average() then writeln('=') else writeln(se.Max);
end.<span>
Пример ввода:
3
3
3
Пример вывода:
=</span></span>