





'''simple docstring'''




from __future__ import annotations







def _lowerCAmelCase     (      _lowerCAmelCase       ,    _lowerCAmelCase       ,    _lowerCAmelCase    )->     dict[str, float]:
 if (voltage, current, resistance).count(0    ) != 1:
  raise ValueError('One and only one argument must be 0'    )
 if resistance < 0:
  raise ValueError('Resistance cannot be negative'    )
 if voltage == 0:
  return {"voltage": float(current * resistance    )}
 elif current == 0:
  return {"current": voltage / resistance}
 elif resistance == 0:
  return {"resistance": voltage / current}
 else:
  raise ValueError('Exactly one argument must be 0'    )


if __name__ == "__main__":
    import doctest

    doctest.testmod()












'''simple docstring'''




from collections.abc import Sequence







def _lowerCAmelCase     (      _lowerCAmelCase       ,    _lowerCAmelCase    )->     float:
 return sum(c * (x**i) for i, c in enumerate(_lowerCAmelCase    )    )







def _lowerCAmelCase     (      _lowerCAmelCase       ,    _lowerCAmelCase    )->     float:
 __UpperCAmelCase					=   0.0
 for coeff in reversed(_lowerCAmelCase    ):
  __UpperCAmelCase					=   result * x + coeff
 return result


if __name__ == "__main__":
    _A:					str							=				(0.0, 0.0, 5.0, 9.3, 7.0)
    _A:					Dict							=				10.0
    print(evaluate_poly(poly, x))
    print(horner(poly, x))





