MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn moreOpportunities for recent engineering grads.

Apply TodayYou are given two line segments. Do they cross?

Consider one segment as (x1,y1) to (x2,y2), the other segment as (x3,y3) to (x4,y4). You are given a = [x1 y1; x2 y2]; b = [x3 y3; x4 y4]. Return tf=true if a and b intersect or tf=false if a and b do not touch.

All lines will intersect cleanly at exactly one non-endpoint. That is, they will not nest, overlap, or "kiss" at the endpoints.

Examples

a = [0,0; 1,1]; b = [0,1; 1,0]; tf = true

a = [0,0; 1,0]; b = [0,1; 1,1]; tf = false

19 correct solutions
9 incorrect solutions

Last solution submitted on Mar 11, 2014

1 Comment

Celestino
on 11 Mar 2014

For
a = [0,0; 2,2]; b = [1,1; 3,3];
a = [0,0; 2,2]; b = [2,2; 3,3];

2 Comments