Coordinate Geometry
Level: 3 — Production (from-scratch derivations, explain-out-loud, code-from-memory) Time limit: 45 minutes Total marks: 60
Instructions: Show all working. Where a derivation is requested, build it from first principles — quoting the final formula without justification earns no credit. Diagrams encouraged.
Question 1. [10 marks] Starting from the Pythagorean theorem applied to the Cartesian plane, derive from scratch the distance formula for the distance between two points and . (a) Draw/describe the right triangle you construct and label the legs. [4] (b) Complete the derivation to obtain . [3] (c) Explain out loud (in words) why squaring the coordinate differences makes the formula independent of the order of the two points. [3]
Question 2. [12 marks] The section formula divides a segment joining and in ratio . (a) Derive the internal section formula point using similar triangles. [5] (b) State how the formula changes for external division, and explain why the sign flips. [3] (c) Find the point that divides the segment from to internally in ratio . [4]
Question 3. [10 marks] (a) Derive from scratch the formula for the distance from a point to the line . You may use the foot-of-perpendicular / projection approach; justify each step. [6] (b) Use your formula to find the distance from to the line . [4]
Question 4. [10 marks] The general equation of a circle is . (a) By completing the square, derive the centre and radius in terms of . [5] (b) Given the circle , find its centre and radius. [3] (c) State the condition on for the equation to represent a real circle, and explain why. [2]
Question 5. [10 marks] Consider points , , . (a) Using the coordinate area-of-triangle formula, determine whether are collinear. Show the formula and the computation. [4] (b) Explain out loud the geometric reason why zero area implies collinearity. [2] (c) Find the equation of the line through and in standard form , and verify satisfies it. [4]
Question 6. [8 marks] (Code-from-memory)
Write, from memory, a short function (pseudocode or Python) named line_through(p1, p2) that:
- takes two points as tuples,
- returns the coefficients of the line through them,
- and includes a helper that tests whether a third point is on that line. Comment each step explaining the coordinate-geometry reasoning. [8]
End of paper.
Answer keyMark scheme & solutions
Question 1 [10]
(a) [4] Plot , . Drop perpendiculars to form right triangle with third vertex . Horizontal leg [2]; vertical leg [2].
(b) [3] By Pythagoras, [1] (absolute values squared drop) [1]. Hence [1].
(c) [3] Because [1] (a real number squared equals its negative squared) [1], swapping the labels of the two points leaves each squared term unchanged, so — distance is symmetric [1].
Question 2 [12]
(a) [5] Let divide with . Drop perpendiculars to x-axis; similar triangles give [2]. Cross-multiply: [1] [1]. Same with y-coordinates gives [1].
(b) [3] External division: replace by , giving [1]. Sign flips because lies outside the segment, so the directed ratio is negative (the vectors point the same way rather than opposite) [2].
(c) [4] , , . [2]; [1]. Point [1].
Question 3 [10]
(a) [6] Line has normal vector [1]. Foot of perpendicular [1]. Since on line: [2]. Distance [1] [1].
(b) [4] ; point . Numerator [2]. Denominator [1]. Distance [1].
Question 4 [10]
(a) [5] . Complete squares: [2] [1]. Centre [1], radius [1].
(b) [3] ; ; . Centre [1]. Radius [2].
(c) [2] Need [1] so that and is real/positive; otherwise it's a point () or imaginary () [1].
Question 5 [10]
(a) [4] Area [1]. [2]. Area collinear [1].
(b) [2] Zero area means the "triangle" is degenerate — the three points cannot enclose any region [1], so they must all lie on a single straight line [1].
(c) [4] Slope [1]. Line: [2]. Check : ✓ [1].
Question 6 [8]
Model answer:
def line_through(p1, p2):
x1, y1 = p1
x2, y2 = p2
# Direction (dx,dy); normal to line is (dy,-dx) => a=dy, b=-dx
a = y2 - y1 # coefficient of x
b = x1 - x2 # coefficient of y
c = -(a*x1 + b*y1) # force line to pass through p1
return (a, b, c)
def on_line(coeffs, p):
a, b, c = coeffs
x, y = p
return a*x + b*y + c == 0 # point satisfies ax+by+c=0Mark scheme: correct from coordinate differences [3]; correct via substitution [2]; working on_line test [2]; meaningful comments [1].
[
{"claim":"Section formula point A(-2,3),B(6,-5) ratio 3:1 is (4,-3)","code":"m,n=3,1; x=(m*6+n*(-2))/(m+n); y=(m*(-5)+n*3)/(m+n); result=(x==4 and y==-3)"},
{"claim":"Distance from (3,-4) to 5x-12y+2=0 is 5","code":"d=abs(5*3-12*(-4)+2)/sqrt(5**2+12**2); result=simplify(d-5)==0"},
{"claim":"Circle x^2+y^2-6x+8y-11=0 has centre (3,-4), radius 6","code":"g,f,c=-3,4,-11; centre=(-g,-f); r=sqrt(g**2+f**2-c); result=(centre==(3,-4) and r==6)"},
{"claim":"A(1,2),B(4,6),C(7,10) are collinear (zero area)","code":"area=Rational(1,2)*abs(1*(6-10)+4*(10-2)+7*(2-6)); result=area==0"}
]