Из условий я не понял про нанизывание на нитку окружностей. Остальное сделал на языке Паскаль. На своём компьютере не проверял, т.к. данный язык у меня не установлен. На фото я укзал рисунок моего понимания условий задачи.- - - - - - - - - - - - -- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -var a,b : integer; {описываем длины сторон} r,p : real; {описываем радиус и периметр}begin write ('Введите длину первой стороны прямоугольника: '); readln(a); write ('Введите длину второй стороны прямоугольника: '); readln(b); r:=(sqrt(a*a+b*b))/2; {находим радиус} r:=trunc(r*10000)/10000; {округляем до четырёх знаков после запятой} p:=(a+b)*2; {находим периметр прямоугольника}; writeln('Радиус окружности равен: ',r); writeln('Периметр прямоугольника равен: ',p);end.