if och if/else
Precis som i R kan du använda nyckelorden if och else för förgreningar. Syntaxen är densamma som i R.
if(condition) {
// Kod som körs om villkoret är TRUE
} else {
// Kod som körs annars
}
Här använder du if och else för att färdigställa definitionen av en absolute()-funktion som beräknar absolutvärdet av ett flyttal. (Detta efterliknar C++-funktionen fabs().)
Den här övningen är en del av kursen
Optimera R-kod med Rcpp
Övningsinstruktioner
- Kontrollera om x är större än noll.
- Om villkoret är uppfyllt, returnera
x. - Lägg till nyckelordet för vad som ska hända annars.
- Om villkoret inte är uppfyllt, returnera negativt
x.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
#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)
*/