Aufgabenstellung

Teilaufgabe a)

Bestimmen Sie eine Polynomfunktion \(f\) 3. Grades mit der folgenden Wertetabelle für die Teilaufgaben a), b) und c).

Eine allgemeine Polynomfunktion 3. Grades hat die Form: f ( x ) = a x 3 + b x 2 + c x + d f(x)=ax 3 +bx 2 +cx+d

Um die vier unbekannten Koeffizienten (\(a, b, c, d\)) zu bestimmen, benötigen wir vier Gleichungen. Diese erhalten wir, indem wir die gegebenen Wertepaare \((x|y)\) in die allgemeine Gleichung einsetzen. Dies führt zu einem linearen Gleichungssystem (LGS), das wir mit R lösen.

Mathematischer Ansatz

Wir setzen die Punkte in \(f(x) = ax3 + bx2 + cx + d\) ein:

\(f(0) = 0 \Rightarrow d = 0\) \(f(1) = -6 \Rightarrow a + b + c + d = -6\) \(f(-1) = 6 \Rightarrow -a + b - c + d = 6\) \(f(3) = 6 \Rightarrow 27a + 9b + 3c + d = 6\) Da wir bereits wissen, dass \(d=0\), vereinfacht sich das System. Wir lösen dies nun mit R.

Lösung mit R

# Koeffizientenmatrix A (links vom Gleichheitszeichen)
# Spalten entsprechen a, b, c, d
A_a <- matrix(c(
  1,  1,  1, 1,   # x = 1
 -1,  1, -1, 1,   # x = -1
 27,  9,  3, 1,   # x = 3
  0,  0,  0, 1    # x = 0 (nur für d relevant, aber der Vollständigkeit halber)
), nrow = 4, byrow = TRUE)

# Ergebnisvektor B (rechts vom Gleichheitszeichen)
# Hinweis: Die Reihenfolge muss zur Matrix passen. 
# Wir sortieren um, damit x=0 an erster Stelle steht für einfachere Lesbarkeit im Code, 
# aber mathematisch ist die Reihenfolge in der Matrix entscheidend.
# Hier passen wir die Matrix-Reihenfolge an die logische Reihenfolge der Punkte an: 0, 1, -1, 3

A_a <- matrix(c(
  0,  0,  0, 1,   # x = 0
  1,  1,  1, 1,   # x = 1
 -1,  1, -1, 1,   # x = -1
 27,  9,  3, 1    # x = 3
), nrow = 4, byrow = TRUE)

B_a <- c(0, -6, 6, 6)

# Lösen des linearen Gleichungssystems
coeffs_a <- solve(A_a, B_a)

# Ergebnisse extrahieren
a_a <- coeffs_a[1]
b_a <- coeffs_a[2]
c_a <- coeffs_a[3]
d_a <- coeffs_a[4]

cat("Die Koeffizienten für Aufgabe a) sind:\n")
## Die Koeffizienten für Aufgabe a) sind:
cat(sprintf("a = %.2f, b = %.2f, c = %.2f, d = %.2f\n", a_a, b_a, c_a, d_a))
## a = 1.00, b = 0.00, c = -7.00, d = 0.00
# Funktion definieren für den Plot
f_a <- function(x) {
  a_a * x^3 + b_a * x^2 + c_a * x + d_a
}

Graphische Darstellung

x_vals <- seq(-4, 4, length.out = 100)
y_vals <- f_a(x_vals)

df_a <- data.frame(x = x_vals, y = y_vals)

ggplot(df_a, aes(x = x, y = y)) +
  geom_line(color = "blue", linewidth = 1) +
  geom_point(data = data.frame(x = c(0, 1, -1, 3), y = c(0, -6, 6, 6)), 
             aes(x = x, y = y), color = "red", size = 3) +
  geom_hline(yintercept = 0, linetype = "dashed") +
  geom_vline(xintercept = 0, linetype = "dashed") +
  labs(title = "Graph der Funktion aus Aufgabe a)",
       subtitle = expression(f(x) == x^3 - 7*x),
       x = "x", y = "f(x)") +
  theme_minimal()

Teilaufgabe b)

Lösung mit R

# Matrix aufstellen für x = 0, 1, -1, 2
A_b <- matrix(c(
  0,  0,  0, 1,   # x = 0
  1,  1,  1, 1,   # x = 1
 -1,  1, -1, 1,   # x = -1
  8,  4,  2, 1    # x = 2 (2^3=8, 2^2=4)
), nrow = 4, byrow = TRUE)

B_b <- c(1, 0, 4, -5)

coeffs_b <- solve(A_b, B_b)
a_b <- coeffs_b[1]
b_b <- coeffs_b[2]
c_b <- coeffs_b[3]
d_b <- coeffs_b[4]

cat("Die Koeffizienten für Aufgabe b) sind:\n")
## Die Koeffizienten für Aufgabe b) sind:
cat(sprintf("a = %.2f, b = %.2f, c = %.2f, d = %.2f\n", a_b, b_b, c_b, d_b))
## a = -1.00, b = 1.00, c = -1.00, d = 1.00
f_b <- function(x) {
  a_b * x^3 + b_b * x^2 + c_b * x + d_b
}

Graphische Darstellung

x_vals <- seq(-2, 3, length.out = 100)
y_vals <- f_b(x_vals)

df_b <- data.frame(x = x_vals, y = y_vals)

ggplot(df_b, aes(x = x, y = y)) +
  geom_line(color = "darkgreen", linewidth = 1) +
  geom_point(data = data.frame(x = c(0, 1, -1, 2), y = c(1, 0, 4, -5)), 
             aes(x = x, y = y), color = "red", size = 3) +
  labs(title = "Graph der Funktion aus Aufgabe b)",
       x = "x", y = "f(x)") +
  theme_minimal()

Teilaufgabe c)

Lösung mit R

# Matrix aufstellen für x = 0, 1, -1, 2
A_c <- matrix(c(
  0,  0,  0, 1,   # x = 0
  1,  1,  1, 1,   # x = 1
 -1,  1, -1, 1,   # x = -1
  8,  4,  2, 1    # x = 2
), nrow = 4, byrow = TRUE)

B_c <- c(-1, 1, 7, 17)

coeffs_c <- solve(A_c, B_c)
a_c <- coeffs_c[1]
b_c <- coeffs_c[2]
c_c <- coeffs_c[3]
d_c <- coeffs_c[4]

cat("Die Koeffizienten für Aufgabe c) sind:\n")
## Die Koeffizienten für Aufgabe c) sind:
cat(sprintf("a = %.2f, b = %.2f, c = %.2f, d = %.2f\n", a_c, b_c, c_c, d_c))
## a = 0.67, b = 5.00, c = -3.67, d = -1.00
f_c <- function(x) {
  a_c * x^3 + b_c * x^2 + c_c * x + d_c
}

Graphische Darstellung

x_vals <- seq(-2, 3, length.out = 100)
y_vals <- f_c(x_vals)

df_c <- data.frame(x = x_vals, y = y_vals)

ggplot(df_c, aes(x = x, y = y)) +
  geom_line(color = "purple", linewidth = 1) +
  geom_point(data = data.frame(x = c(0, 1, -1, 2), y = c(-1, 1, 7, 17)), 
             aes(x = x, y = y), color = "red", size = 3) +
  labs(title = "Graph der Funktion aus Aufgabe c)",
       x = "x", y = "f(x)") +
  theme_minimal()

Zusammenfassung

Wir haben für alle drei Teilaufgaben das lineare Gleichungssystem gelöst, um die Koeffizienten der Polynomfunktion 3. Grades zu finden.

Aufgabe Funktionsterm a) \(f(x) = r a_ax^3 r ifelse(b_a >= 0, "+", "") r b_ax^2 r ifelse(c_a >= 0, "+", "") r c_ax r ifelse(d_a >= 0, "+", "") r d_a\) b) \(f(x) = r a_bx^3 r ifelse(b_b >= 0, "+", "") r b_bx^2 r ifelse(c_b >= 0, "+", "") r c_bx r ifelse(d_b >= 0, "+", "") r d_b\) c) \(f(x) = r a_cx^3 r ifelse(b_c >= 0, "+", "") r b_cx^2 r ifelse(c_c >= 0, "+", "") r c_cx r ifelse(d_c >= 0, "+", "") r d_c\)