CommencerCommencer gratuitement

Recommencer : boucle do-while

La boucle repeat en R s’appelle do while en C++. Par rapport à une boucle while, elle place la condition à la fin, ce qui garantit que le contenu de la boucle s’exécute au moins une fois. La syntaxe est la suivante :

do {
  // Do something
} while(condition);

Remarquez le point-virgule après la condition du while.

Cet exercice fait partie du cours

Optimiser du code R avec Rcpp

Afficher le cours

Instructions

  • Commencez la boucle avec l’instruction do.
  • Indiquez la condition du while afin que la boucle continue tant que la valeur de is_good_enough est false.

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

#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)
*/
Modifier et exécuter le code