<u>PascalABC.NET 3.3.5, сборка 1662 от 29.04.2018</u>
<u>Внимание! Если программа не работает, обновите версию!</u>
begin
var a:=ArrRandom(ReadInteger('n='),-50,50); a.Println;
var s:=a.Where(t->t.IsOdd and (t>0));
if s.Count=0 then Writeln('Нет нечетных положительнных')
else s.Min.Println
end.
<u>Пример</u>
n= 13
31 -5 -22 19 -30 21 -11 -28 -3 20 -19 36 -29
19
Пусть чертежник изначально стоял в точке (0;0).
Выполняем алгоритм:
сместиться на(-3;-6) - чертежник будет в точке (-3;-6)
Дальше идет цикл, выполняющийся три раза.
Пусть команда1 будет такой: сместиться на(x;y).
Тогда за один проход цикла чертежник будет в точке (x+2+3;y-5+3)=(x+5;y-2)
За три прохода цикла чертежник будет в точке (3(x+5);3(y-2))=(3x+15;3y-6)
и не забываем, что до цикла, чертежник был в точке (-3;-6):
(3x+15-3;3y-6-6)=(3x+12;3y-12)
И теперь ему надо вернуться в исходную точку, т.е в точку (0;0).
3x+12=0
3x=-12
x=-4
3y-12=0
3y=12
y=4
При x=-4 и y=4 чертежник из точки (3x+12;3y-12) попадет в точку (0;0).
Ответ: 4) Сместиться на (-4;4)
var
a: real;
begin
read(a);
writeln((2*a*sin(3*a))/3.5);
end.