Noch mal: do-while-Schleife
Die repeat-Schleife in R heißt in C++ do while. Im Vergleich zu einer while-Schleife steht die Bedingung am Ende der Schleife, sodass der Schleifeninhalt mindestens einmal ausgeführt wird. Die Syntax sieht so aus:
do {
// Do something
} while(condition);
Beachte das Semikolon nach der while-Bedingung.
Diese Übung ist Teil des Kurses
R-Code mit Rcpp optimieren
Anleitung zur Übung
- Starte die Schleife mit einem
do-Statement. - Gib die
while-Bedingung so an, dass die Schleife weiterläuft, solange der Wert vonis_good_enoughfalse ist.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
#include
using namespace Rcpp;
// [[Rcpp::export]]
double sqrt_approx(double value, double threshold) {
double x = 1.0;
double previous = x;
bool is_good_enough = false;
// Initiate do while loop
___ {
previous = x;
x = (x + value / x) / 2.0;
is_good_enough = fabs(x - previous) < threshold;
// Specify while condition
} ___
return x;
}
/*** R
sqrt_approx(2, 0.00001)
*/