Напишите для Робота алгоритм, закрашивающий все клетки, расположенные правее вертикальной стены, выше горизонтальной стены и примыкающие к ним, кроме угловой клетки. Робот должен закрасить только клетки, удовлетворяющие данному условию. Например, для приведённого выше рисунка Робот должен закрасить следующие клетки (см. рисунок).
дешифровки:
Const sh = '_.,';
Var
St : String;
i : Integer;
Function DeCode(S : String; Tabl : String; k : Integer) : String;
Var j,n : Integer;
Begin
For j:=1 to Length(S) do
Begin
n:=Pos(S[j],sh);
If n>0 then
Begin
n:=n+k;
While n>Length(sh) do n:=n-Length(sh);
While n<=0 do n:=n+Length(sh);
S[j]:=sh[n];
end
end;
DeCode:=S;
end;
Begin
St:='ЗЫФЙГФШРЦ . ШД';
Writeln(Decode(St,sh,-6));
//For i:=-10 to 10 do Writeln(Decode(St,sh,i));
end.
Формулы площадей квадрата S₁ и круга S₂ известны, что легко позволяет нам найти нужное условие.
Если нужно, чтобы случай, когда квадрат вписан в круг тоже учитывался, строгое неравенство следует заменить нестрогим.
// PascalABC.NET 3.0, сборка 1160 от 05.02.2016
begin
var s1:=ReadReal('Площадь квадрата');
var s2:=ReadReal('Площадь круга');
if pi*s1<2*s2 then Writeln('Квадрат умещается в круге')
else Writeln('Квадрат не умещается в круге')
end.
Тестовое решение:
Площадь квадрата 24.6
Площадь круга 28.4
Квадрат не умещается в круге