diff options
| author | Gaspard Coulet <gaspard.coulet@mines-ales.org> | 2021-04-28 23:05:53 +0200 |
|---|---|---|
| committer | Gaspard Coulet <gaspard.coulet@mines-ales.org> | 2021-04-28 23:05:53 +0200 |
| commit | 9fe033ea88c2f705ec18c232873d056e0c229d72 (patch) | |
| tree | 0647dc8c51610c7336c88c04de2068ea14b21e17 /sem_2/HLIN202/TP/TP9-10/exo14 | |
Initial commit
Diffstat (limited to 'sem_2/HLIN202/TP/TP9-10/exo14')
| -rw-r--r-- | sem_2/HLIN202/TP/TP9-10/exo14/exo14 | bin | 0 -> 13443 bytes | |||
| -rw-r--r-- | sem_2/HLIN202/TP/TP9-10/exo14/exo14.cpp | 40 |
2 files changed, 40 insertions, 0 deletions
diff --git a/sem_2/HLIN202/TP/TP9-10/exo14/exo14 b/sem_2/HLIN202/TP/TP9-10/exo14/exo14 Binary files differnew file mode 100644 index 0000000..79a0305 --- /dev/null +++ b/sem_2/HLIN202/TP/TP9-10/exo14/exo14 diff --git a/sem_2/HLIN202/TP/TP9-10/exo14/exo14.cpp b/sem_2/HLIN202/TP/TP9-10/exo14/exo14.cpp new file mode 100644 index 0000000..da0c7c5 --- /dev/null +++ b/sem_2/HLIN202/TP/TP9-10/exo14/exo14.cpp @@ -0,0 +1,40 @@ +#include<iostream>
+
+int * extraitpairs ( int * tab, int taille, int * taillenew) {
+ *taillenew=0;
+ for (int i = 0; i < taille; i ++){
+ *taillenew += tab[i]%2==0? 1 : 0;
+ }
+ int * tabnew = new int[*taillenew];
+ int j=0;
+ for ( int i =0; i < *taillenew; i ++ ){
+ while ( tab[j] % 2!=0){
+ j ++;
+ }
+ tabnew[i]= tab[j];
+ j++;
+ }
+ return tabnew;
+}
+
+void affichetab ( int *P, int taille) {
+std::cout<<"[";
+for ( int i =0; i <taille ; i++){
+ std::cout<<P[i];
+ if (i != (taille-1)) std::cout<<",";
+}
+std::cout<<"]"<<std::endl;
+}
+
+int main (){
+ int tmp;
+ int *T = new int[4];
+ for (int i=0; i<4; i ++){
+ T[i]= i == 0 ? 1: T[i-1]+1;
+ }
+ int *tabrslt;
+ tabrslt=extraitpairs(T,4,&tmp);
+ affichetab(T,4);
+ affichetab(tabrslt,tmp);
+ return 0;
+}
|
