LoslegenKostenlos loslegen

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

Kurs anzeigen

Anleitung zur Übung

  • Starte die Schleife mit einem do-Statement.
  • Gib die while-Bedingung so an, dass die Schleife weiterläuft, solange der Wert von is_good_enough false 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)
*/
Code bearbeiten und ausführen