bonjour,

mon but est de convertir un fichier1 vers un fichier2.

la partie que je n'arrive pas à convertir dans fichier1 est la suivante:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
 
PWHTAB     tab1  1 1:20  1  1  1 3721.75     3108.77     
PWHTAB     tab1  1 1:20  1  2  1 3541.77     2059.91     
PWHTAB     tab1  1 1:20  1  3  1 3405.6      1398.56
PWHTAB     tab1  1 1:20  2  1  1 4882.17     3809.3      
PWHTAB     tab1  1 1:20  2  2  1 4769.46     2853.57
Y'a pas toutes les valeurs mais normalement elle s'etale sur une ligne. il y a 20 par ligne dans ce cas.

je dois arrivé à le convertir comme suit:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
 
 1  1  1  1  3721.7  3108.8  3187.9  3324.4  3484.3 
             3648.6  3809.3  3963.9  4114.1  4260.9 
             4404.9  4547.2  4689.4  4832.5  4977.2 
             5124.3  5274.5  5427.7  5584.9  5745.9 
/
 1  1  2  1  3541.8  2059.9  2273.5  2545.6  2836.5 
             3117.3  3389.6  3642.2  3881.2  4101.6 
             4313.6  4519.1  4722.1  4924.3  5127.4 
             5329.7  5534.5  5741.5  5952.6  6167.8 
/
 1  1  3  1  3405.6  1398.6  1764.0  2142.2  2526.4 
             2909.9  3282.4  3644.7  3996.6  4341.0 
             4682.8  5020.6  5358.9  5687.9  6016.7 
             6349.7  6677.6  7018.1  7367.5  7726.6 
/
 1  2  1  1  4882.2  3809.3  3821.7  3909.7  4020.4 
             4142.9  4269.4  4397.4  4526.5  4656.5 
             4786.9  4919.0  5054.0  5191.0  5331.2 
             5475.4  5622.9  5774.5  5930.5  6090.9 
/
 1  2  2  1  4769.5  2853.6  2953.0  3144.0  3369.4 
             3598.9  3821.6  4037.8  4238.3  4433.9 
             4625.5  4810.0  4997.1  5185.3  5374.5 
             5563.6  5755.4  5950.1  6148.0  6349.7 
/
 1  2  3  1  4636.4  1637.5  1949.0  2295.2  2652.9 
             3008.1  3351.7  3683.0  4005.3  4321.4 
             4628.3  4931.5  5220.8  5505.7  5788.5 
             6067.5  6339.8  6620.0  6904.8  7197.0
j'ai ecrit un programme qui n'est pas finalisé encore suite à un prob:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
53
54
55
56
57
58
59
 
($1=="PWHTAB") {
 
	if(nomTab != " "){
	ind = 8
	}
	else{ ind=7}
 
 
 
for(itrTHP = 1; itrTHP <= NbElemP; itrTHP++){
for(itrWcut = 1; itrWcut <= NbElemW; itrWcut++){
for(itrGOR = 1; itrGOR <= NbElemGO; itrGOR++){
 
printf(itrTHP);printf("  ");printf(itrWcut);printf("  ");printf(itrGOR);printf("  ");printf("1");printf("  ");
 
 
multPDC=0
nbItrMax= NbElemQ/4
eps = nbItrMax - int(nbItrMax)
 
while(multPDC<int(nbItrMax)){
resPDC = 4 * multPDC
if (multPDC == 0){
printf($(ind+resPDC)); printf("  ");printf($(ind+resPDC+1)); printf("  ");printf($(ind+resPDC+2)); printf("  ");printf($(ind+resPDC+3));print("  ")
		}
	else{
 
printf("            ");printf($(ind+resPDC)); printf("  ");printf($(ind+resPDC+1)); printf("  ");printf($(ind+resPDC+2)); printf("  ");printf($(ind+resPDC+3));print("  ")
}
 
 
 
         multPDC=multPDC+1
 
                }
 
                if (eps>0.001){
			y = 3
                	nbEps = 4*eps
 
		 	if(int(nbItrMax)==0){
				y = 0
				resPDC=0
				ind=ind-1
			}
 
			for(m=1;m<=nbEps;m++){
			printf($(ind+resPDC+y+m)); printf("  ")
 
					}
 
				}
 
				print("/")
				}
			}
		}
   }

donne:


Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
 
1  1  1  1  3721.75  3108.77  3187.86  3324.38  
            3484.28  3648.63  3809.34  3963.86  
            4114.07  4260.89  4404.93  4547.2  
            4689.41  4832.46  4977.19  5124.33  
            5274.54  5427.73  5584.91  5745.94  
/
1  1  2  1  3721.75  3108.77  3187.86  3324.38  
            3484.28  3648.63  3809.34  3963.86  
            4114.07  4260.89  4404.93  4547.2  
            4689.41  4832.46  4977.19  5124.33  
            5274.54  5427.73  5584.91  5745.94  
/
1  1  3  1  3721.75  3108.77  3187.86  3324.38  
            3484.28  3648.63  3809.34  3963.86  
            4114.07  4260.89  4404.93  4547.2  
            4689.41  4832.46  4977.19  5124.33  
            5274.54  5427.73  5584.91  5745.94  
/
1  2  1  1  3721.75  3108.77  3187.86  3324.38  
            3484.28  3648.63  3809.34  3963.86  
            4114.07  4260.89  4404.93  4547.2  
            4689.41  4832.46  4977.19  5124.33  
            5274.54  5427.73  5584.91  5745.94  
/
1  2  2  1  3721.75  3108.77  3187.86  3324.38  
            3484.28  3648.63  3809.34  3963.86  
            4114.07  4260.89  4404.93  4547.2  
            4689.41  4832.46  4977.19  5124.33  
            5274.54  5427.73  5584.91  5745.94

autrement dit il lit la meme ligne qui commence par PWHTAB
(du coup c'est le meme tableau qui est affiché à chaque fois!) or moi je veux que à chaque iteration il lit la ligne suivante comme dans l'exemple ci dessus. comment faire svp?


Merci beaucoup pour votre aide...

Cdt,