Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Fetching contributors…

Cannot retrieve contributors at this time

183 lines (160 sloc) 8.868 kb
<!DOCTYPE html>
<!-- TODO: Improve hints -->
<html data-require="math graphie math-format">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Trigonometry 1</title>
<script data-main="../local-only/main.js" src="../local-only/require.js"></script>
<script>
function fractionSQRoot(b, root){
var natRoot = KhanUtil.splitRadical( root )[0];
var underRoot = KhanUtil.splitRadical( root )[1];
var d = KhanUtil.reduce( natRoot * underRoot, b )[0];
var n = KhanUtil.reduce( natRoot * underRoot, b )[1];
if (d === 1){
return KhanUtil.coefficient(n) + "\\sqrt{" + underRoot +"}";
} else if (underRoot !== 1) {
return "\\dfrac{" + KhanUtil.coefficient(n) + "\\sqrt{" + underRoot +"} }{"+ d + "}";
} else {
return "\\dfrac{" + n + "}{" + d + "}";
}
}
function betterTriangle(width, height, A, B, C, a, b, c) {
var scale = 5 / Math.sqrt(width * width + height * height);
width *= scale;
height *= scale;
with ( KhanUtil.currentGraph ) {
// Leave some space for the labels
init({ range: [[-1.5, width + 1], [-1, height + 1]] });
path([ [0, 0], [width, 0], [0, height], true ]);
label( [0, height], A, "above left" );
label( [0, 0], C, "below left" );
label( [width, 0], B, "below right" );
label( [0, height/2], b, "left" );
label( [width/2, 0], a, "below" );
label( [width/2, height/2], c, "above right", {
labelDistance: 3
} );
}
}
</script>
</head>
<body>
<div class="exercise">
<div class="vars">
<var id="AC">randRange(3, 10)</var>
<var id="BC">randRange(3, 10)</var>
<var id="AB">AC * AC + BC * BC</var>
<var id="AB_STRING">formattedSquareRootOf(AC * AC + BC * BC)</var>
<var id="ANGLE">randFromArray(["ABC", "BAC"])</var>
<var id="ADJACENT_NAME">ANGLE.substring(1)</var>
<var id="OPPOSITE_NAME">(ANGLE.substring(0,1) + ANGLE.substring(2))</var>
<var id="HYPOTENUSE_NAME">"AB"</var>
<var id="ADJACENT_VALUE">ADJACENT_NAME === "AC" ? AC : BC</var>
<var id="OPPOSITE_VALUE">OPPOSITE_NAME === "AC" ? AC : BC</var>
<var id="COS">fractionSQRoot(ADJACENT_VALUE, AB)</var>
<var id="SIN">fractionSQRoot(OPPOSITE_VALUE, AB)</var>
<var id="TAN">fractionReduce(OPPOSITE_VALUE, ADJACENT_VALUE)</var>
</div>
<div class="problems">
<div id="sinTrig1">
<div class="vars">
<var id="FACTOR">getGCD(OPPOSITE_VALUE, splitRadical(AB)[0])</var>
<var id="RATIONALIZE">splitRadical(AB)[1]</var>
<var id="SIMPLE_SIN">
"\\dfrac{" + (OPPOSITE_VALUE / FACTOR) + "}{" + formattedSquareRootOf(AB / FACTOR / FACTOR) + "}"
</var>
</div>
<div class="problem">
<p><code>\overline{AC}</code> is <code><var>AC</var></code> units long</p>
<p><code>\overline{BC}</code> is <code><var>BC</var></code> units long</p>
<p><code>\overline{AB}</code> is <code><var>AB_STRING</var></code> units long</p>
</div>
<p class="question">What is <code>\sin(\angle <var>ANGLE</var>)</code> ?</p>
<p><em>Remember to rationalize the denominator if necessary.</em></p>
<p class="render-answer-area-here"></p>
<div class="graphie">
betterTriangle( BC, AC, "A", "B", "C", BC, AC, AB_STRING );
path([ [ 0.4, 0 ], [ 0.4, 0.4 ], [ 0, 0.4 ] ]);
</div>
<div class="solution"><code><var>SIN</var></code></div>
<ul class="choices" data-none="true" data-show="4">
<li data-if="COS !== SIN"><code><var>COS</var></code></li>
<li><code><var>SIN</var></code></li>
<li><code><var>TAN</var></code></li>
<li><code>\dfrac{1}{<var>AB</var>}</code></li>
<li><code>\dfrac{1}{<var>BC</var>}</code></li>
<li><code>\dfrac{1}{<var>AC</var>}</code></li>
<li><code>\dfrac{2 \sqrt{2}}{<var>AC</var>}</code></li>
</ul>
<div class="hints">
<p><b>SOH</b> CAH TOA</p>
<p><b>S</b>in = <b>O</b>pposite over <b>H</b>ypotenuse</p>
<p>opposite <code>= \overline{<var>OPPOSITE_NAME</var>} = <var>OPPOSITE_VALUE</var></code></p>
<p>hypotenuse <code>= \overline{<var>HYPOTENUSE_NAME</var>} = <var>AB_STRING</var></code></p>
<p><code>
\sin(\angle <var>ANGLE</var>) = \dfrac{<var>OPPOSITE_VALUE</var>}{<var>formattedSquareRootOf(AB)</var>}
<span data-if="FACTOR !== 1"> = <var>SIMPLE_SIN</var></span>
</code></p>
<div data-if="RATIONALIZE !== 1">
<p>Rationalize the denominator:</p>
<p><code>
<var>SIMPLE_SIN</var> \cdot \dfrac{\sqrt{<var>RATIONALIZE</var>}}{\sqrt{<var>RATIONALIZE</var>}} =
\dfrac{<var>(OPPOSITE_VALUE / FACTOR)</var> \cdot \sqrt{<var>RATIONALIZE</var>}}
{<var>formattedSquareRootOf(AB / FACTOR / FACTOR)</var> \cdot \sqrt{<var>RATIONALIZE</var>}} =
<var>SIN</var>
</code></p>
</div>
</div>
</div>
<div id="cosTrig1" data-type="sinTrig1">
<div class="vars">
<var id="FACTOR">getGCD(ADJACENT_VALUE, splitRadical(AB)[0])</var>
<var id="RATIONALIZE">splitRadical(AB)[1]</var>
<var id="SIMPLE_COS">
"\\dfrac{" + (ADJACENT_VALUE / FACTOR) + "}{" + formattedSquareRootOf(AB / FACTOR / FACTOR) + "}"
</var>
</div>
<p class="question">What is <code>\cos(\angle <var>ANGLE</var>)</code> ?</p>
<div class="solution"><code><var>COS</var></code></div>
<div class="hints">
<p>SOH <b>CAH</b> TOA</p>
<p><b>C</b>os = <b>A</b>djacent over <b>H</b>ypotenuse</p>
<p>adjacent <code>= \overline{<var>ADJACENT_NAME</var>} = <var>ADJACENT_VALUE</var></code></p>
<p>hypotenuse <code>= \overline{<var>HYPOTENUSE_NAME</var>} = <var>AB_STRING</var></code></p>
<p><code>
\cos(\angle <var>ANGLE</var>) = \dfrac{<var>ADJACENT_VALUE</var>}{<var>formattedSquareRootOf(AB)</var>}
<span data-if="FACTOR !== 1"> = <var>SIMPLE_COS</var></span>
</code></p>
<div data-if="RATIONALIZE !== 1">
<p>Rationalize the denominator:</p>
<p><code>
<var>SIMPLE_COS</var> \cdot \dfrac{\sqrt{<var>RATIONALIZE</var>}}{\sqrt{<var>RATIONALIZE</var>}} =
\dfrac{<var>(ADJACENT_VALUE / FACTOR)</var> \cdot \sqrt{<var>RATIONALIZE</var>}}
{<var>formattedSquareRootOf(AB / FACTOR / FACTOR)</var> \cdot \sqrt{<var>RATIONALIZE</var>}} =
<var>COS</var>
</code></p>
</div>
</div>
</div>
<div id="tanTrig1" data-type="sinTrig1">
<div class="vars">
<var id="SIMPLE_TAN">fraction(OPPOSITE_VALUE, ADJACENT_VALUE)</var>
</div>
<p class="question">What is <code>\tan(\angle <var>ANGLE</var>)</code> ?</p>
<div class="solution"><code><var>TAN</var></code></div>
<div class="hints">
<p>SOH CAH <b>TOA</b></p>
<p><b>T</b>an = <b>O</b>pposite over <b>A</b>djacent</p>
<p>opposite <code>= \overline{<var>OPPOSITE_NAME</var>} = <var>OPPOSITE_VALUE</var></code></p>
<p>adjacent <code>= \overline{<var>ADJACENT_NAME</var>} = <var>ADJACENT_VALUE</var></code></p>
<p><code>
\tan(\angle <var>ANGLE</var>) = <var>SIMPLE_TAN</var>
<span data-if="TAN !== SIMPLE_TAN"> = <var>TAN</var></span>
</code></p>
</div>
</div>
</div>
</div>
</body>
</html>
Jump to Line
Something went wrong with that request. Please try again.