Квадратный корень
Чтобы извлечь квадратный корень из десятичной дроби (например, 65432.109), её запись разбивают на группы по 2 цифры, начиная от десятичной точки в обе стороны. В крайней левой группе может быть одна цифра (6). Первая цифра корня (2) определяется как наибольшая цифра, квадрат которой не превышает значение первой группы (6). Затем из первой группы вычитается квадрат первой цифры корня (4), и к полученной разнице приписывается следующая группа справа (54). Слева от полученного числа (254) пишется удвоенная первая цифра корня (4), а следующая цифра (5) выбирается как наибольшая, произведение которой на число, образованное приписыванием её к удвоенной первой цифре справа, (45 ∙ 5 = 225) не превышает результат приписывания к предыдущей разнице соответствующей группы (254). Эту цифру (5) записывают после первой цифры корня и так далее. Десятичная точка в корне ставится, когда сносится первая группа справа от десятичной точки числа.
Напишите программу, которая вычисляет квадратный корень положительной десятичной дроби.
Входные данные
Единственная строка содержит в указанном порядке конечную или периодическую положительную десятичную дробь (до 1000 символов, включая десятичную точку) a и натуральное число n, не превышающее 100.
Выходные данные
Единственная строка должна содержать представление квадратного корня a в виде конечной или периодической десятичной дроби, если это возможно, иначе — квадратный корень числа a с недостатком с точностью до n цифр после десятичной точки.