Nhiệm vụ
Viết hàm L () nhận hai đối số Tuple của tọa độ ở dạng (x, y) và trả về hàm tuyến tính tương ứng của chúng ở dạng (a, c), trong đó a là hệ số của thuật ngữ x và c là y-đánh chặn.
Bạn có thể giả sử rằng đầu vào sẽ không phải là một đường vuông góc với trục x và hai đầu vào là các điểm riêng biệt.
Chấm điểm
Đây là Code Golf: chương trình chiến thắng ngắn nhất.
Xin lưu ý: Không sử dụng bất kỳ hàm toán học nào ngoài các toán tử cơ bản (+, -, /, *).
Thí dụ
Đây là giải pháp không chơi gôn của tôi trong Python.
def L(Point1, Point2):
x = 0
y = 1
Gradient = (float(Point1[y]) - float(Point2[y])) / (float(Point1[x]) - float(Point2[x]))
YIntercept = Point1[y] - Gradient * Point1[x]
return (Gradient, YIntercept)
Đầu ra:
>>> L( (0,0) , (1,1) )
(1.0, 0.0)
>>> L( (0,0) , (2,1) )
(0.5, 0.0)
>>> L( (0,0) , (7,1) )
(0.14285714285714285, 0.0)
>>> L( (10,22.5) , (5,12.5) )
(2.0, 2.5)
L((0,0),(0,0))?
L( (0,0) , (0,1) )?