```{r data generation, echo = FALSE, results = "hide"}
library("exams")
library("exams.forge")
instruction <- NULL
thisyear <- format(Sys.Date(), "%Y")
breaks   <- seq(120, 170, by=5)
grenzen  <- histbreaks(breaks, 5) 
breiten  <- diff(grenzen)
mitten   <- grenzen[-1]-breiten/2
klassen  <- sprintf("%i-%i", grenzen[-length(grenzen)], grenzen[-1])
wert    <- sample(setdiff(breaks, grenzen), 1)
f        <- ddiscrete(runif(length(klassen)))
n        <- sample_size_freq(seq(10, 200, 5), f)
tab      <- cbind(f, cumsum(f), f/breiten)
dimnames(tab) <- list(klassen, c("$f(x_j)$", "$F(x_j^o)$", "$f_K(x_j)$"))
htab     <- html_matrix_sk(tab, "Größenklassen", fmt=c("%.2f", "%.2f", "%.4f"))
wertj   <- sum(grenzen<wert)
Fj       <- c(0, cumsum(f))
sc       <- num_result(Fj[wertj]+(wert-grenzen[wertj])/breiten[wertj]*f[wertj], 4)
```

Question
========

```{r, error=TRUE, child=instruction}
```

`r n` Schüler der Leonhard-Euler-Schule in Berlin wurden für einen Gesundheitstest gemessen und gewogen. Für die Körpergröße (in cm) ergab sich dabei folgende Häufigkeitsverteilung:

```{r xtable1, echo = FALSE, results = "asis"}
cat(toHTMLorLatex(htab))
```

Wie viel Prozent der Schüler sind kleiner als `r wert` Zentimeter?  `r round_de(sc$digits)`.

Solution
========

Der Wert $x=`r wert`$ cm befindet sich in Klasse $j=`r wertj`$.

Interpolation von $F(`r wert`)$:

\begin{align*}
F(x) &=  F(x_j^u) + \frac{x-x_j^u}{x_j^o - x_j^u}\cdot f(x_j)  \\
F(`r wert`)  &= `r Fj[wertj]` + \frac{`r wert` - `r grenzen[wertj]`}{`r breiten[wertj]`}\cdot `r f[wertj]`   \\
&=  `r sc$x[1]`
\end{align*}

Meta-information
================
extype: num
exsolution: `r sc$fx[1]`
extol: `r sc$tolerance`
exname: US-Interpolation-2.Rmd
