a = [int(j) for j in input().split()]
b = [int(j) for j in input().split()]
c = [int(j) for j in input().split()]

def move_right(right, other1, other2):
    middle = [(other1[i] + other2[i]) / 2 for i in range(len(other1))]
    hypot = sum([(other1[i] - other2[i]) ** 2 for i, _ in enumerate(other1)]) ** 0.5
    radius = hypot / 2
    dist = sum([(middle[i] - right[i]) ** 2 for i, _ in enumerate(other1)]) ** 0.5
    return abs(radius - dist)

def move_one(moving, right, other):
    vector = [other[j] - right[j] for j in range(2)]
    expected = [vector[1], -vector[0]]
    moving = [moving[j] - right[j] for j in range(2)]
    moved = [
        moving[0] * expected[0] ** 2 + moving[1] * expected[0] * expected[1],
        moving[0] * expected[0] * expected[1] + moving[1] * expected[1] ** 2]
    moved = [m  / (expected[0] ** 2 + expected[1] ** 2) for m in moved]
    return ((moved[0] - moving[0]) ** 2 + (moved[1] - moving[1]) ** 2) ** 0.5

print(min(move_right(a, b, c), move_right(b, a, c), move_right(c, a, b),
          move_one(a, b, c), move_one(a, c, b), move_one(b, a, c),
          move_one(b, c, a), move_one(c, a, b), move_one(c, b, a)))
