Zacznij terazZacznij za darmo

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

Zobacz kurs

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)
*/
Edytuj i uruchom kod