b

m

b

x

x

Nullstelle

m

m = 0.5 (slider from -3 to 3, step 0.5)
b = 1 (slider from -3 to 3, step 0.5)
f(x) = (m * x) + b
Gx: x = -1
Gy: x = 1
P0: (-1.7, 0)
Q0: (1, 0)
P1: (-1.7, -1)
Q1: (1, -1)
iMin: -2
iMax: 0
dTabZeilen = 0.4 (slider from 0 to 1, step 0.1)
schrittweite = 1 (slider from 0 to 4, step 0.1)
dTabSpalten = 1.2 (slider from 1 to 4, step 0.1)
korrekturSpaltenx: -0.2
h(x) = floor(x) - x
k(x) = If[x ≥ 0, If[h(x) ≟ x, -0.1, -0.2], If[h(x) ≟ x, -0.2, -0.4]]
xPunkteZeiger = Sequence((((i - iMin) * dTabSpalten) + (1.5 * dTabZeilen), dTabZeilen + 0.7), i, iMin, iMax, 1)
xPunkte = Sequence((((i - iMin) * dTabSpalten) + k(i), dTabZeilen), i, iMin, iMax, 1)
Zeiger = Element(xPunkteZeiger, 2)
iC: IndexOf[Zeiger, xPunkte] - 11
Gw: x = -1.7
xN: ((-b)) / m
xWerte: {"...", xN, "..."}
yWerte: {"...", 0, "..."}
K: (0.5, 0.2)
korrekturSpalteny: -0.3
yPunkte = Sequence((((i - iMin) * dTabSpalten) + k(f(i)), (-dTabZeilen)), i, iMin, iMax, 1)
zuwachs: (m * schrittweite)
C: Zeiger + (0.2, 0)
D: C + ((0.8 * dTabSpalten), 0)
w = Vector(C, D)
anzahlschritte = 1 (slider from -5 to 5, step 1)
gesamteschrittweite: (anzahlschritte * schrittweite)
TextSchrittweite = If(gesamteschrittweite > 0, "+" + (LaTeX[gesamteschrittweite]), "" + (LaTeX[gesamteschrittweite]))
gesamterzuwachs: (anzahlschritte * zuwachs)
TextZuwachs = If(gesamterzuwachs > 0, "+" + (LaTeX[gesamterzuwachs]), "" + (LaTeX[gesamterzuwachs]))
C1: C + (0, (-5.4 * dTabZeilen))
D1: D + (0, (-5.4 * dTabZeilen))
u = Vector(C1, D1)
StricheSenkrecht = Sequence(Segment[(((i - iMin) * dTabSpalten), (-2 * dTabZeilen)), (((i - iMin) * dTabSpalten), (2 * dTabZeilen))], i, iMin, iMax)
StrichLinks = Segment(((-dTabSpalten), (2 * dTabZeilen)), ((-dTabSpalten), (-2 * dTabZeilen)))
yAchsenabschnitt = Segment((0, 0), (0, b))
xZeiger: IndexOf[Zeiger, xPunkteZeiger] + iMin - 1
X = Point(xAxis)
P = If(m ≟ 0, (0, b), (xN, f(xN)))
x1: xN + 1
Q: (x1, f(x1))
R: (x1, f(xN))
v = Vector(P, R)
a = Vector(R, Q)
TextSchrittweiteGraph = If(gesamteschrittweite > 0, "+" + (LaTeX[gesamteschrittweite]), "" + (LaTeX[gesamteschrittweite]))
TextZuwachsGraph = If(gesamterzuwachs > 0, "+" + (LaTeX[gesamterzuwachs]), "" + (LaTeX[gesamterzuwachs]))
KZuwachs = If(zuwachs > 0, (0.2, 0.2), If[zuwachs ≟ 0, (0.2, -0.1), (0.2, -0.4)])
mKlammer = If(m ≥ 0, LaTeX[m], "(" + (LaTeX[m]) + ")")
bKlammer = If(b ≥ 0, LaTeX[b], "(" + (LaTeX[b]) + ")")
xAnzeige: -6.5
v1, g, i, j, l = Polygon((xAnzeige, -10), (xAnzeige + 1, -10), (xAnzeige + 1, 10), (xAnzeige, 10))
x0: x(X)
y0: f(x0)
v2, n, p, q, r = Polygon((xAnzeige, -10), (xAnzeige + 1, -10), (xAnzeige + 1, y0), (xAnzeige, y0))
v3, s, t, c, d = Polygon((xAnzeige - 1, -10), (xAnzeige + 2, -10), (xAnzeige + 2, 10), (xAnzeige - 1, 10))
Nullviveau = Segment((xAnzeige, 0), (xAnzeige + 1, 0))
v4, e, f_1, g_1, h_1 = Polygon((xAnzeige, y(P)), (xAnzeige + 1, y(P)), (xAnzeige + 1, y(Q)), (xAnzeige, y(Q)))
mschalter = false
bschalter = false
TextZuwachsGraphOhneFarbe = If(gesamterzuwachs > 0, "+" + (LaTeX[gesamterzuwachs]), "" + (LaTeX[gesamterzuwachs]))
TextZuwachsOhneFarbe = If(gesamterzuwachs > 0, "+" + (LaTeX[gesamterzuwachs]), "" + (LaTeX[gesamterzuwachs]))
iZeiger = IndexOf(Zeiger, xPunkteZeiger)
iZeiger0: (-iMin) + 1
StrichRechts = Segment((((iMax - iMin + 1) * dTabSpalten), (2 * dTabZeilen)), (((iMax - iMin + 1) * dTabSpalten), (-2 * dTabZeilen)))
StrichUnten = Segment(((-dTabSpalten), (-2 * dTabZeilen)), (((iMax - iMin + 1) * dTabSpalten), (-2 * dTabZeilen)))
StrichMitte = Segment(((-dTabSpalten), 0), (((iMax - iMin + 1) * dTabSpalten), 0))
StrichOben = Segment(((-dTabSpalten), (2 * dTabZeilen)), (((iMax - iMin + 1) * dTabSpalten), (2 * dTabZeilen)))
KSchrittweiteTabelle: (0, 0.5)
SchrittweiteTexte = If(iZeiger ≥ iZeiger0, Sequence[Text[TextSchrittweite, Element[xPunkteZeiger, i] + KSchrittweiteTabelle, true, true], i, iZeiger0, iZeiger - 1, 1], Sequence[Text[TextSchrittweite, Element[xPunkteZeiger, i] + KSchrittweiteTabelle, true, true], i, iZeiger0 - 1, iZeiger, -1])
KBreiteTabelle: (0, (-5.5 * dTabZeilen))
yPfeileTabelle = If(iZeiger ≥ iZeiger0, Sequence[Vector[Element[xPunkteZeiger, i] + KBreiteTabelle, Element[xPunkteZeiger, i + 1] + KBreiteTabelle], i, iZeiger0, iZeiger - 1, 1], Sequence[Vector[Element[xPunkteZeiger, i] + KBreiteTabelle, Element[xPunkteZeiger, i + 1] + KBreiteTabelle], i, iZeiger0 - 1, iZeiger, -1])
KZuwachsTabelle: (0, -2.3)
ZuwachsTexte = If(iZeiger ≥ iZeiger0, Sequence[Text[TextZuwachs, Element[xPunkteZeiger, i] + KZuwachsTabelle, true, true], i, iZeiger0, iZeiger - 1, 1], Sequence[Text[TextZuwachs, Element[xPunkteZeiger, i] + KZuwachsTabelle, true, true], i, iZeiger0 - 1, iZeiger, -1])
xPfeileGrafik = If(xZeiger ≥ 0, Sequence[Vector[(i, f(i)), (i + 1, f(i))], i, 0, xZeiger - 1, 1], Sequence[Vector[(i, f(i)), (i + 1, f(i))], i, -1, xZeiger, -1])
yPfeileGrafik = If(xZeiger ≥ 0, Sequence[Vector[(i + 1, f(i)), (i + 1, f(i + 1))], i, 0, xZeiger - 1, 1], Sequence[Vector[(i + 1, f(i)), (i + 1, f(i + 1))], i, -1, xZeiger, -1])
SchrittweiteTexteGrafik = If(xZeiger ≥ 0, Sequence[Text[TextSchrittweite, (i, f(i)) + If[m ≥ 0, (0.2, 0.3), (0.2, -0.1)], true, true], i, 0, xZeiger - 1, 1], Sequence[Text[TextSchrittweite, (i, f(i)) + If[m ≥ 0, (0.2, 0.3), (0.2, -0.1)], true, true], i, -1, xZeiger, -1])
ZuwachsTexteGrafik = If(xZeiger ≥ 0, Sequence[Text[TextZuwachs, (i + 1, f(i)) + If[m ≥ 0, (0, 0.4), (0, -0.1)], true, true], i, 0, xZeiger - 1, 1], Sequence[Text[TextZuwachs, (i + 1, f(i)) + If[m ≥ 0, (0, 0.4), (0, -0.1)], true, true], i, -1, xZeiger, -1])
yWerteText0 = Text(f(0), (2.9 + k(f(0)), -0.2), true, true)
yWerteText0ohneFarbe = Text(f(0), (2.9 + k(f(0)), -0.2), true, true)
xPfeileTabelle = If(iZeiger ≥ iZeiger0, Sequence[Vector[Element[xPunkteZeiger, i], Element[xPunkteZeiger, i + 1]], i, iZeiger0, iZeiger - 1, 1], Sequence[Vector[Element[xPunkteZeiger, i], Element[xPunkteZeiger, i + 1]], i, iZeiger0 - 1, iZeiger, -1])
PunkteGraph = Sequence((i, f(i)), i, iMin, iMax, 1)
xWerteText: {Text["x", (-0.8, 0.6), true, true], Text["...", (-0.2, 0.4) + K, true, true], Text["...", (2.3, 0.4) + K, true, true]}
h0(x) = floor(x) - x
laenge(x) = If[x ≥ 0, If[h(x) ≟ 0, 1, If[h((10 * x)) ≟ 0, 2.5, If[h((100 * x)) ≟ 0, 3.5]]], If[h(x) ≟ 0, 2, If[h((10 * x)) ≟ 0, 3.6, If[h((100 * x)) ≟ 0, 4.5]]]]
xNLaenge: laenge(round(xN, 2))
ky = If(xNLaenge ≟ 1, 0.7, If[xNLaenge ≟ 2.5, 0.5, If[xNLaenge ≟ 3.5, 0.45, If[xNLaenge ≟ 2, 0.5, If[xNLaenge ≟ 4.5, 0.3, 0.34]]]])
Text1: "f(x) = \color{blue}{\underbrace{ " + (LaTeX[mKlammer]) + "}_{m}} \color{black}{\cdot x +} \color{#008000}{\underbrace{ " + (LaTeX[bKlammer]) + "}_{b}} "
TextNullstelle = If(m ≟ 0, If[b ≟ 0, Text["...", (1.1, 0.4) + K, true, true], Text["?", (1.1, 0.4) + K, true, true]], Text[xN, (ky + 0.4, 0.4) + K, true, true])
f0(x) = 0
o = false
TextNullstelle2 = Text(0, (1.1, -0.4) + K, true, true)
yWerteText: {Text["f(x)", (-1, -0.2), true, true], Text["...", (-0.2, -0.4) + K, true, true], Text["...", (2.3, -0.4) + K, true, true]}
x0Laenge: laenge(round(x0, 2))
kx = If(x0Laenge ≟ 1, 0.7, If[x0Laenge ≟ 2.5, 0.5, If[x0Laenge ≟ 3.5, 0.45, If[x0Laenge ≟ 2, 0.5, If[x0Laenge ≟ 4.5, 0.3, 0.34]]]])
TextNullstelleAlt = Text(x0, (kx + 0.4, 0.4) + K, true, true)
y0Laenge: laenge(round(y0, 2))
ky2 = If(y0Laenge ≟ 1, 0.7, If[y0Laenge ≟ 2.5, 0.5, If[y0Laenge ≟ 3.5, 0.45, If[y0Laenge ≟ 2, 0.5, If[y0Laenge ≟ 4.5, 0.3, 0.34]]]])
TextNullstelle2Alt = Text(y0, (ky2 + 0.4, -0.4) + K, true, true)
mDreieck = Slope(f)
PX: (x0, y0)
Y: (0, y0)
i_1 = Segment(X, PX)
j_1 = Segment(PX, Y)