PascalABC.NET 3.4.0, сборка 1675 от 12.06.2018 Внимание! Если программа не работает, обновите версию!
function mean(Self:sequence of real):real; extensionmethod; begin Result:=Self.Average end;
begin var (n,m):=ReadInteger2('Количество строк и столбцов в матрице:'); var a:=MatrGen(n,m,(i,j)->(Random(9000)+1000)/100); Writeln('*** Исходная матрица [',n,',',m,'] ***'); a.Println(6,2); Writeln(6*a.ColCount*'-'); Writeln('Средние значения по четным столбцам'); SeqGen(m div 2,t->2*t-1,1).Select(j->a.Col(j).mean).Println end.
Program dz1; var x:array[1..100]of integer; i,max,min,n,t,buf,k:integer; begin
write('Введите кол-во эл-тов n:');readln(n);
for i:=1 to n do x[i]:=random(151)-70; writeln('вывод сген. массива'); for i:=1 to n do write (x[i],' '); writeln; writeln;
//1 writeln('Поиск max и min: '); max:=1; min:=1; for i:=2 to n do begin if (x[max]<x[i])then max:=i; if (x[min]>x[i])then min:=i; end; writeln('min=',x[min]); writeln('max=',x[max]); t:=x[max]; x[max]:=x[min]; x[min]:=t;
//2 for i:=1 to n-1 do for k:=1 to n-i do if x[k] < x[k+1] then begin buf:=x[k]; x[k]:=x[k+1]; x[k+1]:=buf; end; writeln; writeln('Массив отсортирован');
Внимание! Если программа не работает, обновите версию!
function mean(Self:sequence of real):real; extensionmethod;
begin
Result:=Self.Average
end;
begin
var (n,m):=ReadInteger2('Количество строк и столбцов в матрице:');
var a:=MatrGen(n,m,(i,j)->(Random(9000)+1000)/100);
Writeln('*** Исходная матрица [',n,',',m,'] ***');
a.Println(6,2); Writeln(6*a.ColCount*'-');
Writeln('Средние значения по четным столбцам');
SeqGen(m div 2,t->2*t-1,1).Select(j->a.Col(j).mean).Println
end.
var
x:array[1..100]of integer;
i,max,min,n,t,buf,k:integer;
begin
write('Введите кол-во эл-тов n:');readln(n);
for i:=1 to n do x[i]:=random(151)-70;
writeln('вывод сген. массива');
for i:=1 to n do write (x[i],' ');
writeln;
writeln;
//1
writeln('Поиск max и min: ');
max:=1; min:=1;
for i:=2 to n do
begin
if (x[max]<x[i])then max:=i;
if (x[min]>x[i])then min:=i;
end;
writeln('min=',x[min]);
writeln('max=',x[max]);
t:=x[max];
x[max]:=x[min];
x[min]:=t;
//2
for i:=1 to n-1 do
for k:=1 to n-i do
if x[k] < x[k+1] then
begin
buf:=x[k];
x[k]:=x[k+1];
x[k+1]:=buf;
end;
writeln;
writeln('Массив отсортирован');
for i:=1 to n do write(x[i],' ');
writeln;
end.
Пример:
Введите кол-во эл-тов n:15
вывод сген. массива
32 -38 -35 53 -50 31 66 16 5 28 64 -11 20 -43 -1
Поиск max и min:
min=-50
max=66
Массив отсортирован
66 64 53 32 31 28 20 16 5 -1 -11 -35 -38 -43 -50