<!doctypehtml><title>
   Dividing a line segment into N equal parts with compass and straightedge or ruler - Math Open Reference
  </title><meta content="text/html; charset=utf-8"http-equiv=content-type><meta content=divide,line,segment,construction,congruent,part name=Keywords><meta content="How to divide a line segment into equal parts with compass and straightedge or ruler.  We start with a given line segment and divide it into any number of equal parts.  In the applet we divide it into five parts but it can be any number. Using a compass and straightedge, we do this without measuring the line. A Euclidean construction"name=Description><meta content="line segment"name=wp><link href=common/css2.css rel=stylesheet><script src=common/js6.js></script><meta content=width=device-width,initial-scale=1 name=viewport><script src=//cdn.thisiswaldo.com/static/js/9075.js></script><body><style>#nav1  {
	position:fixed;
	top:0; 
	left:1%;
	background: #6789ab;
	height: 36px;
	width: 98%;
	max-width: 728px;
	z-index:9000;
}

	#nav1 #logo {
		float:left;
		letter-spacing:1px;
		font-size:20px;
		font-weight:bold;
		color:white;
		margin:	8px 0 0	20px;
		cursor:pointer;
	}


#nav2	{
	position:fixed;
	top:36px;
	left:1%;
	background: #666;
	height: 42px;
	max-width: 728px;
	width:98%;
	padding:9px 0 0 20px;
	z-index:9000
}



	#nav2 #srch {
		width:240px;
		height: 22px;
		border: 2px solid #a98;
		padding-left:5px;
		font-size:16px;
		font-family:sans-serif;
		border-radius:	6px 0 0	6px
	}

	#nav2 #srch:focus {
		outline: none;
	}

	#nav2 #srchIcon	{
		float:left;
		width:30px;
		position:relative;
		height:22px;
		background:#a98;
		border-radius: 0 6px 6px 0;
		cursor:pointer;
	}

	#nav2 .search.icon {
		color: #000;
		position: absolute;
		top: 3px;
		left:5px;
		width: 14px;
		height: 14px;
		border: solid 1px white;
		border-radius: 100%;
		-webkit-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}

	#nav2 .search.icon:before {
		content: '';
		position: absolute;
		top: 11px;
		left: 4px;
		height: 10px;
		width: 2px;
		background-color: white;
		}



#nav3	{
	position:fixed;
	top:78px;
	left:1%;
	background:#a98;
	height:36px;
	width:98%;
	max-width: 728px;
	padding-top:4px;
	z-index:9000
}

	#nav3 .navLink	{
		color:white;
		margin:4px 14px 0 12px ;
		float:left;
		cursor:pointer
	}


@media print {
		body {
		margin-top: 50px
		}

		#nav1,#nav2,#nav3 {
		display:none
		}
}</style><div id=nav1><a href=index.html id=logo title=Home> Math Open Reference </a></div><div id=nav2><form action=search.php id=searchForm method=post onsubmit=goSearch();><input id=srch name=srch style=float:left><input id=dbug name=dbug type=hidden value=normal><div id=srchIcon onclick=goSearch()><div class="search icon"title=Search></div></div></form></div><div id=nav3><a class=navLink href=index.html> Home </a><a class=navLink href=sitecontacts.php> Contact </a><a class=navLink href=siteabout.html> About </a><a class=navLink href=indexpagea.html> Subject Index </a></div><style>.leftSideBar  {      
        display:none;
	position:fixed; 
	top: 50px; 
	left:5px; 
	width:160px; 
	height:200px;
	border:1px solid pink;
}

/*desktop devices only*/
@media only screen and (min-device-width: 480px)	
  {	
     body {
	margin-left:220px;
     }

     .leftSideBar  { 
     	display:block;
     }

     #nav1, #nav2, #nav3 {
     left: 220px;
     width:600px;
     }

  }</style><div class=leftSideBar><div style="width:160px; height:600px;  border:1px solid #aaa; background:#f6f6f6;"><div id=waldo-tag-9354></div></div></div><h1>Dividing a segment into several equal parts</h1><center> <div class=applet id=applet><script language=javascript>loadJSApplet("constdividesegment", "applet", 600, 450,"constappletframe");</script></div> </center><p>This shows how to divide a given <a title="A straight line which links two points without extending beyond them. "href=linesegment.html> line segment </a> into a number of equal parts with compass and straightedge or ruler. In the applet we divide it into five parts but it can be any number. By using a compass and straightedge construction, we do this without measuring the line.<h2>Printable step-by-step instructions</h2><p>The above animation is available as a <a class=link href=printdividesegment.html> printable step-by-step instruction sheet </a> , which can be used for making handouts or when a computer is not available.<div style="width:300px; height:250px; margin: 20px auto; border:1px solid #888; background:#eee;"><div id=waldo-tag-9113></div></div><h2>Proof</h2><p>The image below is the final drawing above with the AD, CB added and points labelled.<div style="text-align:center; padding:12px; margin-bottom:12px"><img alt border=0 height=248 src=images/constructions/constdividesegment/proof.gif width=420><table border=0 cellpadding=7 cellspacing=0 class=constProof><thead><tr><th> <th width=200>Argument<th>Reason<tbody><tr valign=top><td style="padding-top:12px; font-weight:bold"colspan=3>We first prove that AC, DB are parallel<tr valign=top><td>1<td>AC = DB<td>By construction. See <a href=constcopysegment.html> Copying a line segment </a> for method and proof<tr valign=top><td>2<td>AD = CB<td>By construction. Compass width for AD set from CB<tr valign=top><td>3<td>ACBD is a parallelogram.<td>A quadrilateral with congruent opposite sides is a <a href=parallelogram.html> parallelogram </a> .<tr valign=top><td>4<td>AC, DB are parallel<td>Opposite sides of a <a href=parallelogram.html> parallelogram </a> are parallel.<tr valign=top><td style="padding-top:12px; font-weight:bold"colspan=3>We next prove that PE, QF are parallel<tr valign=top><td>5<td>PQ = EF<td>Drawn with same compass width<tr valign=top><td>6<td>PQ, EF are parallel<td>From (4)<tr valign=top><td>7<td>PQFE is a parallelogram.<td>A quadrilateral with one pair of opposite sides parallel and congruent is a <a href=parallelogram.html> parallelogram </a> .<tr valign=top><td>8<td>PE, QF are parallel<td>Opposite sides of a <a href=parallelogram.html> parallelogram </a> are parallel.<tr valign=top><td style="padding-top:12px; font-weight:bold"colspan=3>Prove that triangle AQK is similar to and twice the size of APJ<tr valign=top><td>9<td>∠APJ = ∠AQK<td><a href=anglescorresponding.html> Corresponding angles </a> . AB is a transversal across the parallels PE, QF<tr valign=top><td>10<td>∠AJP = ∠AKQ<td><a href=anglescorresponding.html> Corresponding angles </a> . AB is a transversal across the parallels PE, QF<tr valign=top><td>11<td>Triangles AQK, APJ are similar<td>AAA. ∠PAJ is common to both, and (9), (10). See <a href=similaraaa.html> Similar triangles test, angle-angle-angle </a> .<tr valign=top><td>12<td>Triangles AQK is twice the size of APJ<td>AP = PQ. Both drawn with same compass width.<tr valign=top><td style="padding-top:12px; font-weight:bold"colspan=3>Prove that AJ = JK<tr valign=top><td>13<td>AK is twice AJ<td>(11), (12). AQK is similar to, and twice the size of APJ. All sides of similar triangles are in the same proportion. See <a href=similartriangles.html> Properties of similar triangles </a> .<tr valign=top><td>14<td>AJ = JK<td>From (13), J must be the midpoint of AK.<tr valign=top><td colspan=3 style=padding-top:12px;><b> We have proved the first two segments along the given line AB are congruent. </b> <br> We repeat steps 5-14 for each successive triangle. For example we show that triangle ARL is similar to and three times APJ, and so AJ is one third AL. We continue until we have shown that all the segments along AB are congruent.<tr valign=top><td>15<td>AJ = JK = KL = LM = MB<td>By applying the same steps to triangle AQK, ARL etc.<tr valign=top><td>16<td>AB is divided into n equal parts.<td> </table><br>   -  <a title="Proof is complete"href=qed.html> Q.E.D </a></div><h2>Try it yourself</h2><a href=wsdividesegment.html> Click here for a printable worksheet </a> containing two line division exercises. When you get to the page, use the browser print command to print as many as you wish. The printed output is not copyright. <div style="width:300px; height:250px; margin: 20px auto; border:1px solid #888; background:#eee;"><div id=waldo-tag-9111></div></div><h2>Other constructions pages on this site</h2><ul class=citeUL><li><a class=gSeeAlso href=worksheetlist.html style=color:green> List of printable constructions worksheets </a></ul><h3>Lines</h3><ul class=citeUL><li><a class=gSeeAlso href=constructions.html> Introduction to constructions </a><li><a class=gSeeAlso href=constcopysegment.html> Copy a line segment </a><li><a class=gSeeAlso href=constaddsegments.html> Sum of n line segments </a><li><a class=gSeeAlso href=constdiffsegments.html> Difference of two line segments </a><li><a class=gSeeAlso href=constbisectline.html> Perpendicular bisector of a line segment </a><li><a class=gSeeAlso href=constperplinepoint.html> Perpendicular from a line at a point </a><li><a class=gSeeAlso href=constperpextpoint.html> Perpendicular from a line through a point </a><li><a class=gSeeAlso href=constperpendray.html> Perpendicular from endpoint of a ray </a><li><a class=gSeeAlso href=constdividesegment.html> Divide a segment into n equal parts </a><li><a class=gSeeAlso href=constparallel.html> Parallel line through a point (angle copy) </a><li><a class=gSeeAlso href=constparallelrhombus.html> Parallel line through a point (rhombus) </a><li><a class=gSeeAlso href=constparalleltt.html> Parallel line through a point (translation) </a></ul><h3>Angles</h3><ul class=citeUL><li><a class=gSeeAlso href=constbisectangle.html> Bisecting an angle </a><li><a class=gSeeAlso href=constcopyangle.html> Copy an angle </a><li><a class=gSeeAlso href=constangle30.html> Construct a 30° angle </a><li><a class=gSeeAlso href=constangle45.html> Construct a 45° angle </a><li><a class=gSeeAlso href=constangle60.html> Construct a 60° angle </a><li><a class=gSeeAlso href=constangle90.html> Construct a 90° angle (right angle) </a><li><a class=gSeeAlso href=constaddangles.html> Sum of n angles </a><li><a class=gSeeAlso href=constdiffangles.html> Difference of two angles </a><li><a class=gSeeAlso href=constsupplementaryangle.html> Supplementary angle </a><li><a class=gSeeAlso href=constcomplementaryangle.html> Complementary angle </a><li><a class=gSeeAlso href=constangleothers.html> Constructing  75°  105°  120°  135°  150° angles and more </a></ul><h3>Triangles</h3><ul class=citeUL><li><a class=gSeeAlso href=constcopytriangle.html> Copy a triangle </a><li><a class=gSeeAlso href=constisosceles.html> Isosceles triangle, given base and side </a><li><a class=gSeeAlso href=constisosceles2.html> Isosceles triangle, given base and altitude </a><li><a class=gSeeAlso href=constisosceles3.html> Isosceles triangle, given leg and apex angle </a><li><a class=gSeeAlso href=constequilateral.html> Equilateral triangle </a><li><a class=gSeeAlso href=const306090.html> 30-60-90 triangle, given the hypotenuse </a><li><a class=gSeeAlso href=consttrianglesss.html> Triangle, given 3 sides (sss) </a><li><a class=gSeeAlso href=consttriangleasa.html> Triangle, given one side and adjacent angles (asa) </a><li><a class=gSeeAlso href=consttriangleaas.html> Triangle, given two angles and non-included side (aas) </a><li><a class=gSeeAlso href=consttrianglesas.html> Triangle, given two sides and included angle (sas) </a><li><a class=gSeeAlso href=constmedian.html> Triangle medians </a><li><a class=gSeeAlso href=constmidsegment.html> Triangle midsegment </a><li><a class=gSeeAlso href=constaltitude.html> Triangle altitude </a><li><a class=gSeeAlso href=constaltitudeobtuse.html> Triangle altitude (outside case) </a></ul><h3>Right triangles</h3><ul class=citeUL><li><a class=gSeeAlso href=consttrianglehl.html> Right Triangle, given one leg and hypotenuse (HL) </a><li><a class=gSeeAlso href=consttrianglell.html> Right Triangle, given both legs (LL) </a><li><a class=gSeeAlso href=consttriangleha.html> Right Triangle, given hypotenuse and one angle (HA) </a><li><a class=gSeeAlso href=consttrianglela.html> Right Triangle, given one leg and one angle (LA) </a></ul><h3>Triangle Centers</h3><ul class=citeUL><li><a class=gSeeAlso href=constincenter.html> Triangle incenter </a><li><a class=gSeeAlso href=constcircumcenter.html> Triangle circumcenter </a><li><a class=gSeeAlso href=constorthocenter.html> Triangle orthocenter </a><li><a class=gSeeAlso href=constcentroid.html> Triangle centroid </a></ul><h3>Circles, Arcs and Ellipses</h3><ul class=citeUL><li><a class=gSeeAlso href=constcirclecenter.html> Finding the center of a circle </a><li><a class=gSeeAlso href=const3pointcircle.html> Circle given 3 points </a><li><a class=gSeeAlso href=consttangent.html> Tangent at a point on the circle </a><li><a class=gSeeAlso href=consttangents.html> Tangents through an external point </a><li><a class=gSeeAlso href=consttangentsext.html> Tangents to two circles (external) </a><li><a class=gSeeAlso href=consttangentsint.html> Tangents to two circles (internal) </a><li><a class=gSeeAlso href=constincircle.html> Incircle of a triangle </a><li><a class=gSeeAlso href=constellipsefoci.html> Focus points of a given ellipse </a><li><a class=gSeeAlso href=constcircumcircle.html> Circumcircle of a triangle </a></ul><h3>Polygons</h3><ul class=citeUL><li><a class=gSeeAlso href=constsquare.html> Square given one side </a><li><a class=gSeeAlso href=constinsquare.html> Square inscribed in a circle </a><li><a class=gSeeAlso href=consthexagon.html> Hexagon given one side </a><li><a class=gSeeAlso href=constinhexagon.html> Hexagon inscribed in a given circle </a><li><a class=gSeeAlso href=constinpentagon.html> Pentagon inscribed in a given circle </a></ul><h3>Non-Euclidean constructions</h3><ul class=citeUL><li><a class=gSeeAlso href=constellipse1.html> Construct an ellipse with string and pins </a><li><a class=gSeeAlso href=constcirclecenter2.html> Find the center of a circle with any right-angled object </a></ul><div style="width:300px; height:250px; margin: 20px auto; border:1px solid #888; background:#eee;"><div id=waldo-tag-9112></div></div><form action=/site/contacts.php id=feedback method=post><input class=fbInput1 id=refpage name=refpage type=hidden></form><div class=legal>(C) 2011 Copyright Math Open Reference. <br> All rights reserved</div><style>.rightCol  {            /* overrides css2.css */
	position:fixed; 
	top: 20px; 
	left:875px; 
	width:300px; 
}</style><div class=rightCol><div style="width:300px; height:250px; margin: 20px auto; border:1px solid #bbb; background:#efefef;"><div id=waldo-tag-9180></div></div><div style="width:300px; height:250px; margin: 20px auto;"><div id=waldo-tag-9325><script>googletag.cmd.push(function() { googletag.display('waldo-tag-9325'); });</script></div></div></div><script>(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
  })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');

  ga('create', 'UA-88697705-1', 'auto');
  ga('send', 'pageview');</script><script><!-- @@include constdividesegment.js  -->

initApplet();



var CW  = 1;  //clockwise
var CCW = 2;  //counterclockwise
var fixedColor = 0x0000ff;

var drawArea = new Sprite();
var compass  = new Compass(performScript);
var ruler    = new Ruler(performScript);
var skin     = new SkinConst(performScript, initialize, compass, ruler);

var showPoints = INVISIBLE;
var a = new LabeledPoint(80,200,       showPoints, NON_DRAGGABLE,"A", 270);
var b = new LabeledPoint(a.x+400,a.y,  showPoints, NON_DRAGGABLE,"B", 270);
var w =90;
var theta = .3;
var topRow = new Array();  //top row of points
var lowRow = new Array();  //lower row of points
var midRow = new Array();  //middle row of points

var t1,t2,t3,t4,t5;
var scriptStep;




function build() //called when the shared stuff has done loading
{ 	  addChild(skin);
	  addChild(drawArea);
	  with(drawArea)
	    { addChild(compass);
	      addChild(ruler);
		  addChild(a);
		  addChild(b);
	    }

	  for(var i=1; i<6; i++)
		{ var p = new LabeledPoint(a.x+i*w*Math.cos(theta), a.y-i*w*Math.sin(theta), showPoints, NON_DRAGGABLE, "C",45);
		  drawArea.addChild(p);
		  topRow.push(p);
		}


	  for(var i=1; i<6; i++)
		{ var p = new LabeledPoint(b.x-i*w*Math.cos(theta), b.y+i*w*Math.sin(theta), showPoints, NON_DRAGGABLE, "D",220);
		  drawArea.addChild(p);
		  lowRow.push(p);
		}

	  var delta = (b.x-a.x)/5;
	  for(var i=1; i<5; i++)
		{ var p = new GeomPoint(a.x+(i*delta), a.y, showPoints, NON_DRAGGABLE);
		  drawArea.addChild(p);
		  midRow.push(p);
		}

	  t1 = new Ticmarks(a, midRow[0]);         addChild(t1);
	  t2 = new Ticmarks(midRow[0], midRow[1]); addChild(t2);
	  t3 = new Ticmarks(midRow[1], midRow[2]); addChild(t3);
	  t4 = new Ticmarks(midRow[2], midRow[3]); addChild(t4);
	  t5 = new Ticmarks(midRow[3], b        ); addChild(t5);

	initialize();

}


function initialize()
{   drawArea.graphics.clear();
    scriptStep = -1;
	resetPoints(drawArea);

	t1.visible = showPoints;
	t2.visible = showPoints;
	t3.visible = showPoints;
	t4.visible = showPoints;
	t5.visible = showPoints;

    performScript();  //do step 0 then wait for run / next
}



function initialObjects()
//Sets up the fixed items for the construction
{
  a.visible = true;
  b.visible = true;

  with(drawArea.graphics)
  	{ clear(true);
	  lineStyle(1, fixedColor);
	  moveTo(a.x, a.y);
	  lineTo(b.x, b.y);
	}

}


function performScript()
{
  scriptStep++;

  switch(scriptStep)
	{
	case 0:
	skin.scriptStart();
	skin.splashPage();
	break;

	case 1:
	skin.unSplash(300);
	break;

	case 2:
	initialObjects();
	skin.pause((skin.runMode) ?  900 : 0);
    break;



	case 3:
	skin.explainNext("Step 1. Draw a ray from A at an angle, roughly the same length as AB",0,
					 "Goal:  Divide the given line segment AB into equal parts. (Here 5 parts).");
    break;

	case 4:
	ruler.set(a,topRow[4],30,60);
	ruler.show(900);
	break;

	case 5:
	ruler.scribe(500,0,30);
	break;

	case 6:
	ruler.hide(900);
	break;



	case 7:
	skin.explainNext("2. Place the compass on A and adjust the width to about one fifth of AB");
    break;

	case 8:
	compass.set(a, 40, topRow[4]);
	compass.show(500);
	break;

	case 9:
	compass.adjustRadius(topRow[0],800);
	break;



	case 10:
	skin.explainNext("3. Step the compass along the line making 5 arcs.  Label last one C");
	break;

	case 11:
	compass.scribeArc(topRow[0], CCW, 500);
	break;

	case 12: compass.moveTo   (topRow[0], 300);      break;
	case 13: compass.scribeArc(topRow[1], CCW, 300); break;

	case 14: compass.moveTo   (topRow[1], 300);      break;
	case 15: compass.scribeArc(topRow[2], CCW, 300); break;

	case 16: compass.moveTo   (topRow[2], 300);      break;
	case 17: compass.scribeArc(topRow[3], CCW, 300); break;

	case 18: compass.moveTo   (topRow[3], 300);      break;
	case 19: compass.scribeArc(topRow[4], CCW, 300); break;

	case 20:
	compass.hide(400);
	break;

	case 21:
	topRow[4].visible=true;
	skin.pause(900);
	break;



	case 22:
	skin.explainNext("4. With compass width set to CB, draw an arc below A");
	break;

	case 23:
    compass.set( topRow[4], topRow[4].distance(b)/2, b);
	compass.show(500);
	break;

	case 24:
	compass.adjustRadius(b,500);
	break;

	case 25:
	compass.moveTo(a, 600);
	break;

	case 26:
	compass.scribeArc(lowRow[4], CW, 300);
	break;

	case 27:
	compass.hide(900);
	break;



	case 28:
	skin.explainNext("5. With compass width set to AC, draw an arc below A creating point D");
	break;

	case 29:
    compass.set( topRow[4], topRow[4].distance(a)/2, a);
	compass.show(500);
	break;

	case 30:
	compass.adjustRadius(a,600);
	break;

	case 31:
	compass.moveTo(b, 500);
	break;

	case 32:
	compass.scribeArc(lowRow[4], CW, 400, 0.15);
	break;

	case 33:
	compass.hide(6);
	break;

	case 34:
	lowRow[4].visible=true;
	skin.pause(900);
	break;



	case 35:
	skin.explainNext("6. Draw a line between D and B");
	break;

	case 36:
	ruler.set(lowRow[4], b);
	ruler.show(600);
	break;

	case 37:
	ruler.scribe(500,0,0);
	break;

	case 38:
	ruler.hide(900);
	break;



	case 39:
	skin.explainNext("7. Using the compass width used on AC, make 4 arcs along DB.");
    break;

	case 40:
	compass.set(a, 40, topRow[0]);
	compass.show(500);
	break;

	case 41:
	compass.adjustRadius(topRow[0],400);
	break;

	case 42: compass.moveTo   (lowRow[4], 300);      break;
	case 43: compass.scribeArc(lowRow[3], CW, 300);  break;

	case 44: compass.moveTo   (lowRow[3], 300);      break;
	case 45: compass.scribeArc(lowRow[2], CCW, 300); break;

	case 46: compass.moveTo   (lowRow[2], 300);      break;
	case 47: compass.scribeArc(lowRow[1], CCW, 300); break;

	case 48: compass.moveTo   (lowRow[1], 300);      break;
	case 49: compass.scribeArc(lowRow[0], CCW, 300); break;

	case 50:
	compass.hide(900);
	break;



	case 51:
	skin.explainNext("8. Draw lines between the corresponding points on AC, DB");
    break;

	case 52: ruler.set(topRow[0], lowRow[3]); ruler.show(300); break;
	case 53: ruler.scribe(300,0,0);                            break;
	case 54: ruler.hide(400);                                  break;

	case 55: ruler.set(topRow[1], lowRow[2]); ruler.show(300); break;
	case 56: ruler.scribe(300,0,0);                            break;
	case 57: ruler.hide(400);                                  break;

	case 58: ruler.set(topRow[2], lowRow[1]); ruler.show(300); break;
	case 59: ruler.scribe(300,0,0);                            break;
	case 60: ruler.hide(400);                                  break;

	case 61: ruler.set(topRow[3], lowRow[0]); ruler.show(300); break;
	case 62: ruler.scribe(300,0,0);                            break;
	case 63: ruler.hide(900);                                  break;



	case 64:
    for(var i=0; i<midRow.length; i++)   midRow[i].visible = true;
	t1.visible = true;
	t2.visible = true;
	t3.visible = true;
	t4.visible = true;
	t5.visible = true;
	skin.scriptEnd();
	skin.explainNext("Done. The line segment AB is divided into 5 congruent segments ");
	break;

	}

  repaint();

}


build();</script><style>#neworFooter {
	display:none; /* we turn it back on selectively*/
}

@media screen and (max-device-width: 768px)  /* show if mobile, or              
              (min-height: 750px      )         any device if window tall enough */
  { #neworFooter {display:block;}
  }</style><div id=neworFooter><div id=waldo-tag-9108></div></div>