countRoots :: (Ord a, Floating a) => a -> a -> a -> String
countRoots a b c
  | d < 0     = "no roots"
  | d == 0    = "one root"
  | otherwise = "two roots"
  where d = b*b - 4*a*c


--Task 4

--Отделните аргументи може да са различни типове с различни ограничения.
countRoots a b c
  | d < 0     = "no roots"
  | d == 0    = "one root"
  | otherwise = "two roots"
  where d = b*b - 4*a*c


--Task 4

--Отделните аргументи може да са различни типове с различни ограничения.