input: Write a function to solve a quadratic equation given coefficients a, b, and c. The function should return a dictionary with a status key indicating if the roots are real and an array containing the roots. If the equation has no real roots, the roots key should be an empty array.
  
  def solveQuadratic(a, b, c): 
      discriminant = (b**2) - (4*a*c);
      
      # If discriminant is negative there are no real roots.
      if (discriminant < 0): 
          return {
              "status": False,
              "roots": []
          }
      # If discriminant is zero, there is only one real roots.
      elif (discriminant == 0):
          x = -b/(2*a)
          return {
              "status": True,
              "roots": [x]
          }
      # Otherwise there are 2 real roots 
      else:
          x1 = (-b + math.sqrt(discriminant)) / (2*a); 
          x2 = (-b - math.sqrt(discriminant)) / (2*a); 
          return {
              "status": True,
              "roots": [x1, x2]
          }
  
  assert solveQuadratic(1, 3, -4) == {'status': True, 'roots': [-4.0, 1.0]}
  assert solveQuadratic(1, 2, 1) == {'status': True, 'roots': [-1.0]}
  assert solveQuadratic(1, 0, 1) == {'status': False, 'roots': []}
  assert solveQuadratic(0, 3, -4) == {'status': True, 'roots': [4/3]}
  assert solveQuadratic(0, 0, 1) == {'status': False, 'roots': []}
output: def solveQuadratic(a, b, c): 
      if a == 0:
          if b == 0:
              return {
                  "status": False,
                  "roots": []
              }
          else:
              return {
                  "status": True,
                  "roots": [c / b]
              }
      discriminant = (b**2) - (4*a*c)
      if discriminant < 0: 
          return {
              "status": False,
              "roots": []
          }
      elif discriminant == 0:
          x = -b/(2*a)
          return {
              "status": True,
              "roots": [x]
          }
      else:
          x1 = (-b + math.sqrt(discriminant)) / (2*a)
          x2 = (-b - math.sqrt(discriminant)) / (2*a)
          return {
              "status": True,
              "roots": [x1, x2]
          }