Chapitre 6. Programmation en R
259
Astuce
L’option de compilation (flag en anglais) -Wall permet d’afficher tous
les avertissements ou erreurs (all warnings) lors de la compilation (lorsqu’il
y en a bien entendu !) :
g++ -o moncombn.exe combn.cpp main.cpp -Wall
Nous allons maintenant produire les
200
3
= 1 313 400 sous-vecteurs constitu´ es des diff´ erentes combinaisons de trois ´ el´ ements pioch´ es dans le vecteur
1:200. Pour la version C/C++, modifiez les lignes 10, 12 et 15 du code de la
fonction main pr´ esent´ e en page 255. Ces lignes de code deviennent :
n[0]=200;
Cnm=1313400;
// for (j=1;j<=Cnm * m[0];j++) cout << combmat[j-1] << """;
Pour la version Fortran, modifiez les lignes 4, 6 et 10 du code de la fonction
main pr´ esent´ e en page 257. Ces lignes de code deviennent :
n=200
Cnm=1313400
!write( * , * ) (combmat(j) ,j=1,k)
Nous avons comment´ e la derni` ere ligne ci-dessus (au moyen de // pour C/C++
et de ! pour Fortran) pour que l’appel du programme moncombn.exe n’affiche
plus le r´ esultat (devenu tr` es volumineux) du calcul, ce qui prendrait beaucoup
de temps. Mais le calcul est bien effectu´ e. Nous sommes ainsi coh´ erents avec le
calcul pr´ ec´ edent effectu´ e sous R, pour lequel le r´ esultat n’´ etait pas affich´ e mais
stock´ e dans la variable x. Apr` es avoir sauvegard´ e vos modifications, recompilez,
puis lancez votre code :
:: Pour compiler le code C/C++:
g++ -o moncombn.exe combn.cpp main.cpp
:: Pour compiler le code Fortran:
gfortran -o moncombn.exe combn.f90 main.f90
Précédent

- 292/701

Suivant