if și if/else
La fel ca în R, poți folosi cuvintele cheie if și else pentru ramificarea execuției. Sintaxa este identică cu cea din R.
if(condition) {
// Cod de rulat dacă condiția este TRUE
} else {
// Cod de rulat în caz contrar
}
Aici vei folosi if și else pentru a finaliza definiția unei funcții absolute(), care calculează valoarea absolută a unui număr în virgulă mobilă. (Aceasta imită funcția C++ fabs().)
Acest exercițiu face parte din cursul
Optimizarea codului R cu Rcpp
Instrucțiuni pentru exercițiu
- Testează dacă x este mai mare decât zero.
- Dacă condiția este adevărată, returnează
x. - Adaugă cuvântul cheie pentru cazul în care condiția nu este îndeplinită.
- Dacă condiția nu este adevărată, returnează
xnegativ.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
#include
using namespace Rcpp ;
// [[Rcpp::export]]
double absolute(double x) {
// Test for x greater than zero
___(___) {
// Return x
___;
// Otherwise
} ___ {
// Return negative x
___;
}
}
/*** R
absolute(pi)
absolute(-3)
*/