// PascalABC.NET 3.0, сборка 1088
function InitA(n:integer):array of integer;
begin
Result:=ArrRandom(n,-31,45)
end;
procedure GetA(var a:array of integer);
begin
a:=InitA(ReadInteger('Количество элементов в массиве А: '));
end;
procedure PutM(c:char; a:array of integer);
begin
Writeln('*** Массив '+c+'[',a.Length,'] ***',#13#10,a);
end;
function FormB(a:array of integer):array of integer;
begin
Result:=Range(0,a.Length-1,2).Select(x->a[x]).ToArray
end;
function MinEl(a:array of integer):integer;
begin
Result:=a.Min
end;
begin
var mA:array of integer;
GetA(mA); PutM('A',mA);
var mB:=FormB(mA); PutM('B',mB);
Writeln('Минимальный элемент в массиве В равен ',MinEl(mB))
end.
<em><u>Тестовое решение:</u></em>
Количество элементов в массиве А: 15
*** Массив A[15] ***
[-22,0,-9,17,14,3,38,-18,-28,-17,28,13,1,1,26]
*** Массив B[8] ***
[-22,-9,14,38,-28,28,1,26]
Минимальный элемент в массиве В равен -28
// PascalABC.Net 3.0, сборка 1076
var
s,ss:string;
i,n,p:integer;
begin
Write('Введите строку: '); Readln(s);
n:=Length(s); p:=Pos(',',s);
if p in [1..n-1] then begin
ss:=Copy(s,p+1,n-p);
n:=Length(ss); p:=Pos(',',ss);
if p=0 then Writeln(ss)
else Writeln(Copy(ss,1,p-1))
end
else Writeln('*** Нечего выводить ***')
end.
<u><em>Тестовые решения:</em></u>
Введите строку: 01234,45679,1011213,14151617
45679
Введите строку: 01234,45679101121314151617
45679101121314151617
Введите строку: 01234,
*** Нечего выводить ***
Ну, если розы росли так:
* *
* *
* *
* *
* *
то периметр 12 метров ( но здесь есть заковыка: если первый куст уже полит, то зачем же к нему идти еще раз? Тогда ответ 9*1,2 = 10,8 м)...
Var k:integer;
function sr(n:integer):real;
var i,s:integer;
begin
s:=0;
for i:=1 to n do s:=s+i*i;
sr:=s/n;
end;
begin
write('k='); readln(k);
writeln('Среднее арифметическое = ', sr(k));
end.
Пример:
k=5
Среднее арифметическое = 11