Obliczanie pierwiastków kwadratowych za pomocą pętli while
Pętla while działa tak długo, jak długo spełniony jest określony warunek. Składnia pętli while w C++ jest taka sama jak w R.
while(condition) {
// Do something
}
To ćwiczenie jest częścią kursu
Optymalizacja kodu R za pomocą Rcpp
Instrukcje do ćwiczenia
Zdefiniuj pętlę while tak, aby wykonywała kolejne iteracje, dopóki wartość is_good_enough wynosi false.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
#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;
// Specify the while loop
___(___) {
previous = x;
x = (x + value / x) / 2.0;
is_good_enough = fabs(x - previous) < threshold;
}
return x ;
}
/*** R
sqrt_approx(2, 0.00001)
*/