Page 1 sur 1

Re : suite valeur variable fausse

Posté : 02 mars 2009 17:29
par pmer
Bonjour,

dans le programme ci-dessous je voudrais remplir un fichier ligne à ligne avec l'inverse de la variable %%g (que j'appelle unsurLMO) en sachant que dans mon fichier %%g vaut 142,9;156,1;599,8 ce qui devrait me generer à chaque ligne unsurLMO valant 0.007 à ligne 1 du fichier col1.txt ; 0,006406 à ligne 2 du fichier col1.txt ; 0,001667 à ligne 3 du fichier col1.txt etc ..

programme batch
echo off
setlocal enableDelayedExpansion
@FOR /f "tokens=1-2,4-5,19-21 delims=," %%a in (D:\MeteoMM5\20080630separvirg.txt) do (
set dateaaaammjj=%%a
set annee=!dateaaaammjj:~0,4!
set mois=!dateaaaammjj:~4,2!
set jour=!dateaaaammjj:~6,2!
set heure=!dateaaaammjj:~8,2!
if !mois! EQU 01 set nbjour==0
if !mois! EQU 02 set nbjour==31
...
set /A jourjulien =!jour!+!nbjour!
set LMO=%%g
set /A unsurLMO=1/!LMO!
echo 1/LMO : !unsurLMO!
echo !annee!,!jourjulien!,!heure!,%%b,%%c,%%d,%%e,%%f,!unsurLMO! >>D:\MeteoMM5\col1.txt
)
endlocal
pause


Malheureusement, j'obtiens toujours 0 pour !unsurLMO! dans mon fichier col1.txt alors que mon programme écrit ce que j'attends pour les autres variables !

Extrait du fichier 20080630separvirg.txt (3 lignes, 27 colonnes) Le fichier complet comporte en fait 96 lignes :
2008063000, 17.25, 0.783, 2.89, 360., 0.0, 0.0, -4.0, 2.5, 385.6, 9.80, 0.00, 0.00, 61., 0., 0., 0., 22405., 0.00, 300., 142.9, 267.9, 11.07, 9.80, 3.13, 327.,
2008063001, 16.77, 0.796, 2.83, 2., 0.0, 0.0, -3.5, 2.0, 381.8, 9.29, 0.00, 0.00, 19., 0., 0., 0., 22485., 0.00, 302., 156.1, 264.9, 3.38, 9.29, 2.54, 323.,
2008063002, 16.04, 0.801, 2.96, 3., 0.0, 0.0, -2.5, 2.4, 379.2, 10.13, 0.00, 0.00, 24., 0., 0., 0., 22919., 0.00, 292., 599.8, 263.4, 4.41, 10.13, 2.20, 321.,

En vous remerciant par avance pour votre aide sur cette question sans doute de néophyte mais je suis débutant.
Cordialement.
Pmer

Re: Re : suite valeur variable fausse

Posté : 02 mars 2009 22:48
par Batch_Man
Bonsoir,

Je veux bien t'aider, mais je n'ai rien compris, peut-être ais-je mal lu.. :D

Batch_Man

Re: Re : suite valeur variable fausse

Posté : 03 mars 2009 11:16
par pmer
Bonjour,
pour simplifier à l'extrême, je n'arrive pas dans mon programme (voir 1er mail) à générer une variable qui est l'inverse d'une autre soit passer de x à 1/x. Dans mon programme, je lis dans un fichier ma variable x qui est %%g et je veux ecrire dans un autre fichier(col1.txt) la variable 1/%%g.
Dans mon programme, j'ai toujours 0 qui s'ecrit en guise de 1/%%g ce qui n'est pas ce que j'attends.
Merci par vance pour votre aide, je reste à votre disposition pour d'autres éventuels compléments d'explications.

Pmer