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

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

29 correct solutions
19 incorrect solutions

Last solution submitted on Sep 17, 2015

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