From 9fe033ea88c2f705ec18c232873d056e0c229d72 Mon Sep 17 00:00:00 2001 From: Gaspard Coulet Date: Wed, 28 Apr 2021 23:05:53 +0200 Subject: Initial commit --- sem_3/SYSTEME/TP2/ex6/param | Bin 0 -> 8571 bytes sem_3/SYSTEME/TP2/ex6/param.c | 12 +++++++++ sem_3/SYSTEME/TP2/ex7/moyenne | Bin 0 -> 8573 bytes sem_3/SYSTEME/TP2/ex7/moyenne.c | 14 ++++++++++ sem_3/SYSTEME/TP2/ex9/strsplit | Bin 0 -> 8715 bytes sem_3/SYSTEME/TP2/ex9/strsplit.c | 54 +++++++++++++++++++++++++++++++++++++++ sem_3/SYSTEME/TP2/impair.c | 5 ++++ sem_3/SYSTEME/TP2/impair.h | 1 + sem_3/SYSTEME/TP2/pair.c | 4 +++ sem_3/SYSTEME/TP2/pair.h | 1 + sem_3/SYSTEME/TP2/spair | Bin 0 -> 8695 bytes sem_3/SYSTEME/TP2/spair.c | 11 ++++++++ 12 files changed, 102 insertions(+) create mode 100644 sem_3/SYSTEME/TP2/ex6/param create mode 100644 sem_3/SYSTEME/TP2/ex6/param.c create mode 100644 sem_3/SYSTEME/TP2/ex7/moyenne create mode 100644 sem_3/SYSTEME/TP2/ex7/moyenne.c create mode 100644 sem_3/SYSTEME/TP2/ex9/strsplit create mode 100644 sem_3/SYSTEME/TP2/ex9/strsplit.c create mode 100644 sem_3/SYSTEME/TP2/impair.c create mode 100644 sem_3/SYSTEME/TP2/impair.h create mode 100644 sem_3/SYSTEME/TP2/pair.c create mode 100644 sem_3/SYSTEME/TP2/pair.h create mode 100644 sem_3/SYSTEME/TP2/spair create mode 100644 sem_3/SYSTEME/TP2/spair.c (limited to 'sem_3/SYSTEME/TP2') diff --git a/sem_3/SYSTEME/TP2/ex6/param b/sem_3/SYSTEME/TP2/ex6/param new file mode 100644 index 0000000..944bb79 Binary files /dev/null and b/sem_3/SYSTEME/TP2/ex6/param differ diff --git a/sem_3/SYSTEME/TP2/ex6/param.c b/sem_3/SYSTEME/TP2/ex6/param.c new file mode 100644 index 0000000..c321752 --- /dev/null +++ b/sem_3/SYSTEME/TP2/ex6/param.c @@ -0,0 +1,12 @@ +#include +#include + +int main ( int argc, char **argv) { + printf("Nombre d'arguments : %d\n", argc); + int i = 1; + for (i; i < argc; i ++ ) { + printf("%s\n",argv[i]); + } +return 0; +} + diff --git a/sem_3/SYSTEME/TP2/ex7/moyenne b/sem_3/SYSTEME/TP2/ex7/moyenne new file mode 100644 index 0000000..3e75ffc Binary files /dev/null and b/sem_3/SYSTEME/TP2/ex7/moyenne differ diff --git a/sem_3/SYSTEME/TP2/ex7/moyenne.c b/sem_3/SYSTEME/TP2/ex7/moyenne.c new file mode 100644 index 0000000..6a420d8 --- /dev/null +++ b/sem_3/SYSTEME/TP2/ex7/moyenne.c @@ -0,0 +1,14 @@ +#include +#include + +int main ( int argc, char **argv) { + int i = 1; + double moy = 0; + for (i; i < argc; i ++ ) { + moy += atof(argv[i]); + } +moy = moy/(i-1); +printf("%f \n", moy ); +return 0; +} + diff --git a/sem_3/SYSTEME/TP2/ex9/strsplit b/sem_3/SYSTEME/TP2/ex9/strsplit new file mode 100644 index 0000000..65fe687 Binary files /dev/null and b/sem_3/SYSTEME/TP2/ex9/strsplit differ diff --git a/sem_3/SYSTEME/TP2/ex9/strsplit.c b/sem_3/SYSTEME/TP2/ex9/strsplit.c new file mode 100644 index 0000000..69c68e5 --- /dev/null +++ b/sem_3/SYSTEME/TP2/ex9/strsplit.c @@ -0,0 +1,54 @@ +#include +#include + +//char ** strsplit ( char*,char); +char ** strsplit ( char * fichier, char sep ) { + printf("entree dans strsplit"); + int nbsep = 0; + int cpt = 0; + while ( fichier[cpt] != '\0' ) { + nbsep += (fichier[cpt] == sep ? 1 : 0); + cpt ++; + } + printf("%d bloc differents",cpt); + int i = 0, offset = 0, offsetchar = 0; + char ** tab = malloc((cpt + 1)*sizeof(char*)) ; + printf("tab init"); + //tab[cpt] = NULL; + printf("%p", tab[cpt+1]); + for ( i =0; i < cpt+1; i ++ ) { + tab[i] = malloc ( 100 * sizeof(char)); + } + i =0; + cpt = 0; + while ( fichier[i] != '\0' ) { + if (fichier[i] != sep) { + tab[offset][offsetchar] = fichier[i]; + offsetchar ++; + cpt ++; + } + else { + tab[offset][offsetchar]='/0'; + tab[offset] = realloc ( tab[offset], (cpt) * sizeof(char)); + offset++; + offsetchar = 0; + cpt = 0 ; + } + } +return tab; +} + + +int main (int argc, char ** argv) { +int i=0,cpt=0; +printf("jusqu'ici tout va bien"); +char ** tableau = strsplit(argv[1], argv[2][0]); +while (tableau[i]!=NULL) { + while (tableau[i][cpt]!='\0') { + printf("%c",tableau[i][cpt]); + cpt ++; + } + printf("\n"); +i ++; +} +return 0;} diff --git a/sem_3/SYSTEME/TP2/impair.c b/sem_3/SYSTEME/TP2/impair.c new file mode 100644 index 0000000..f61f5bc --- /dev/null +++ b/sem_3/SYSTEME/TP2/impair.c @@ -0,0 +1,5 @@ +#include "pair.h" + +int impair ( unsigned int i) { + return (i == 0 ? 0 : ( pair(i-1))); +} diff --git a/sem_3/SYSTEME/TP2/impair.h b/sem_3/SYSTEME/TP2/impair.h new file mode 100644 index 0000000..196468b --- /dev/null +++ b/sem_3/SYSTEME/TP2/impair.h @@ -0,0 +1 @@ +int impair(unsigned int); diff --git a/sem_3/SYSTEME/TP2/pair.c b/sem_3/SYSTEME/TP2/pair.c new file mode 100644 index 0000000..05b9a0a --- /dev/null +++ b/sem_3/SYSTEME/TP2/pair.c @@ -0,0 +1,4 @@ +#include "impair.h" +int pair(unsigned int i){ + return (i == 0 ? 1 : impair(i-1)); +} diff --git a/sem_3/SYSTEME/TP2/pair.h b/sem_3/SYSTEME/TP2/pair.h new file mode 100644 index 0000000..2b5acab --- /dev/null +++ b/sem_3/SYSTEME/TP2/pair.h @@ -0,0 +1 @@ +int pair ( unsigned int ); diff --git a/sem_3/SYSTEME/TP2/spair b/sem_3/SYSTEME/TP2/spair new file mode 100644 index 0000000..fe2dd14 Binary files /dev/null and b/sem_3/SYSTEME/TP2/spair differ diff --git a/sem_3/SYSTEME/TP2/spair.c b/sem_3/SYSTEME/TP2/spair.c new file mode 100644 index 0000000..32fa224 --- /dev/null +++ b/sem_3/SYSTEME/TP2/spair.c @@ -0,0 +1,11 @@ +#include +#include +#include "pair.h" +#include "impair.h" + +int main ( int argc, char ** argv) { + int param = atoi(argv[1]); + if (pair(param)) printf("%d est pair\n", param); + else printf("%d est impair\n", param); + return 0; +} -- cgit v1.2.3