Bergervei/Javascript-Bruchrechnung
Aus ProgrammingWiki
Wiki-Quelltext dieser Seite.
<language>Javascript</language>
<code id="58dd76b0084da" hidden>
function ggT(m, n) {
if (n == 0)
return m;
else
return ggT(n, m % n);
}
</code>
<p>Gegeben sind die beiden Brüche $b_1=\frac{z_1}{n_1}$ und $b_2=\frac{z_2}{n_2}$</p>
<p>mit $z_1, z_2 \in \mathbb{Z}$ ; $n_1, n_2 \in \mathbb{N}$ und $n_1 \not= 0$ ; $n_2 \not= 0$.</p>
== Addition und Subtraktion von Brüchen ==
<table border="0" cellpadding="4" width="800">
<tr>
<td colspan="2">Allgemein gilt:</td>
</tr>
<tr>
<th>Addition</th><th>Subtraktion</th>
</tr>
<tr valign="top">
<td>
<blockquote>\[b_1 + b_2 = \frac{z_1}{n_1} + \frac{z_2}{n_2}\]</blockquote>
<blockquote>\[b_1 + b_2 = \frac{z_1 \cdot n_2 + z_2 \cdot n_1}{n_1 \cdot n_2}\]</blockquote>
</td>
<td>
<blockquote>\[b_1 - b_2 = \frac{z_1}{n_1} - \frac{z_2}{n_2}\]</blockquote>
<blockquote>\[b_1 - b_2 = \frac{z_1 \cdot n_2 - z_2 \cdot n_1}{n_1 \cdot n_2}\]</blockquote>
</td>
</tr>
<tr>
<td colspan="2">Natürlich wird das Ergebnis anschließend vollständig gekürzt.</td>
</tr>
<tr valign="top">
<td>
<code id="58dd76b00854c">
function Addition(z1, n1, z2, n2) {
var ze = z1 * n2 + z2 * n1;
var ne = n1 * n2;
var t = ggT(ze, ne);
ze = ze / t;
ne = ne / t;
return ze + "/" + ne;
}
</code>
</td>
<td>
<code id="58dd76b0085b1">
function Subtraktion(z1, n1, z2, n2) {
var ze = z1 * n2 - z2 * n1;
var ne = n1 * n2;
var t = ggT(ze, ne);
ze = ze / t;
ne = ne / t;
return ze + "/" + ne;
}
</code>
</td>
</tr>
<tr valign="top">
<td>
<run id="58dd76b008624">
Addition(3, 4, 2, 3);
</run>
</td>
<td>
<run id="58dd76b008685">
Subtraktion(3, 4, 2, 3);
</run>
</td>
</tr>
</table>