diff --git a/Home.md b/Home.md index 703ab90..9a93da9 100644 --- a/Home.md +++ b/Home.md @@ -73,3 +73,11 @@ Sa syntaxe de base a inspiré de nombreux langages plus récents dont C++, Java - [Travaux dirigés 4](td4) : Prendre un fichier en entrée et le séparer en plusieurs fichiers. - [Travaux dirigés 5](td5) : - [Travaux dirigés 6](td6) : + + +### Remarques +- Intervertir TD 3 et TD 4. Les sorties du TD3 sont les entrées du TD 4 +- TD 3 Renommer les fichiers de sorties en GBP, YEN, ... +- TD 4 : arguments en ligne de commandes +- TD 3 : rendre dynamique la lecture en comptant le nombre de colonne et en utilisant un tableau +- TD 3 : Faire l'opération inverse agréger plusieurs fichiers en un diff --git a/td3.c b/td3.c index 8c683ec..6585bc5 100644 --- a/td3.c +++ b/td3.c @@ -3,7 +3,7 @@ int main() { FILE *fichier = fopen("data/observations.csv", "r"); - if (fichier==NULL) { + if (fichier== NULL) { perror("Erreur d'ouverture du fichier"); return 1; } diff --git a/td4.c b/td4.c new file mode 100644 index 0000000..5e3f7a9 --- /dev/null +++ b/td4.c @@ -0,0 +1,24 @@ +int main() { + + FILE *fichier = fopen("data/observations.csv", "r"); + if (fichier == NULL) { + perror("Erreur d'ouverture du fichier"); + return 1; + } + + FILE *fA = fopen("A.csv"); + FILE *fB = fopen("B.csv"); + FILE *fC = fopen("C.csv"); + FILE *fD = fopen("D.csv"); + + + float vA, vB, vC, vD; + while (fscanf(fichier, "%f", &vA, &vB, &vC, &vD)==4) { + printf("%f\n", valeur); + fprintf(fA, "%f\n", vA); + fprintf(fB, "%f\n", vB); + fprintf(fC, "%f\n", vC); + fprintf(fD, "%f\n", vD); + } + +} diff --git a/td6.md b/td6.md index e2eeac5..d61f039 100644 --- a/td6.md +++ b/td6.md @@ -1 +1,9 @@ # Travaux dirigés n° 6 + + +### Reprise du TD 4 pour le rendre dynamique + +Le format n'est pas connu à l'avance il va falloir lire caractères par caractères pour trouver le nombre de colonnes. + + +### Reprise du TD 3 pour spécifier le nom du fichier en entrée.