Incrémenter un nom de fichier en C
Bonjour,
Besoin d'incrémenter un nom de fichier en C mais ça paraît compliqué.
J'ai écris ce bout de code pour illustrer mes propos :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52
|
#include <stdio.h>
#include <math.h>
#include <stdlib.h>
#include <string.h>
#define size 200
//#define ncorps 10
main ()
{
int k; // indice du corps solide
int ncorps; // nombre de corps solides dans mon systeme
int compteur; // le compteur
int maxcompteur; // nombre max d'itérations
int sauv; // fréquence de sauvegarde
double dt,temps;
double x[size]={0}; // la valeur à calculer et à sauvegarder
// pour chaque corps
// supposons ici qu'elle est connue
FILE*fichier;
dt=0.000001;
temps=0;
ncorps=5;
sauv=2;
maxcompteur=10;
compteur=1;
fichier=fopen("resu.dat","w");
do{
if(compteur%sauv==0){
fprintf(fichier,"# iteration n°%d \n",compteur);
for(k=1;k<ncorps+1;k++){
x[k]=2.5*k*temps;
fprintf(fichier,"%d %lf %lf\n",k,temps,x[k]);
}
fprintf(fichier,"\n");
}
temps+=dt;
compteur+=1;
}while(compteur<=maxcompteur);
fclose(fichier);
} |
et voici le résultat que j'obtiens :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
|
# iteration n°2
1 0.000001 0.000002
2 0.000001 0.000005
3 0.000001 0.000007
4 0.000001 0.000010
5 0.000001 0.000012
# iteration n°4
1 0.000003 0.000008
2 0.000003 0.000015
3 0.000003 0.000023
4 0.000003 0.000030
5 0.000003 0.000038
# iteration n°6
1 0.000005 0.000012
2 0.000005 0.000025
3 0.000005 0.000037
4 0.000005 0.000050
5 0.000005 0.000063
# iteration n°8
1 0.000007 0.000017
2 0.000007 0.000035
3 0.000007 0.000052
4 0.000007 0.000070
5 0.000007 0.000087
# iteration n°10
1 0.000009 0.000023
2 0.000009 0.000045
3 0.000009 0.000068
4 0.000009 0.000090
5 0.000009 0.000113 |
Au lieu d'avoir tout les résultats dans le même fichier tel que montré ci-dessus, j'aimerai écrire dans des fichiers séparés car ( nombre de corps très important). Il faut que j'incrémente le nom de mon fichier comme ceci :
Code:
1 2 3 4 5 6 7 8 9 10
|
fichier2.dat
fichier4.dat
fichier6.dat
.
.
.
fichierN.dat
N: numéro de l'itération |
J'ai déjà écris ce genre de code mais en langage FORTRAN et en langage C je galère à le faire...
Voilà si vous avez une idée, merci à vous et bon week-end.