Otra vez: bucle do-while
El bucle repeat en R se llama do while en C++. En comparación con un bucle while, mueve la condición al final del bucle, de modo que el contenido del bucle se ejecuta al menos una vez. La sintaxis es la siguiente:
do {
// Do something
} while(condition);
Fíjate en el punto y coma después de la condición del while.
Este ejercicio forma parte del curso
Optimizar código de R con Rcpp
Instrucciones del ejercicio
- Inicia el bucle con una sentencia
do. - Especifica la condición del
while, para que el bucle siga iterando mientras el valor deis_good_enoughsea falso.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
#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)
*/