Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1469 connectés 

  FORUM HardWare.fr
  Programmation
  Shell/Batch

  Recherche du maximum d une liste de nombres[resolu]

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Recherche du maximum d une liste de nombres[resolu]

n°1231938
arnaud1206
Posté le 26-10-2005 à 21:57:42  profilanswer
 

Bonjour,
Je cherche le maximum d une liste de nombre contenus dans nombre.txt
il y a un nombre par lignes
Voila ce que j ai essaye de faire mais ca cloche
 

Code :
  1. setlocal enableExtensions
  2. set max=0
  3. for /F %%i in (d:\nombres.txt) do (if /I %%i GTR %%max (goto suivant))
  4. goto fin
  5. :suivant
  6. set max=%%i%
  7. goto :eof
  8. :fin
  9. endlocal


 
Merci de me sortir de ce mauvais pas : )))))

Message cité 1 fois
Message édité par arnaud1206 le 02-11-2005 à 10:23:58
mood
Publicité
Posté le 26-10-2005 à 21:57:42  profilanswer
 

n°1231989
dividee
Posté le 26-10-2005 à 22:37:47  profilanswer
 

sort -nr nombres.txt | head -1
pq faire compliqué ? ;)

n°1232000
dividee
Posté le 26-10-2005 à 22:42:37  profilanswer
 

oops j'avais pas vu que c'était du shell windows (d'où manque chronique d'utilitaires). Je peux pas aider.

n°1232389
wackevat
Posté le 27-10-2005 à 13:33:34  profilanswer
 

arnaud1206 a écrit :


for /F %%i in (d:\nombres.txt) do (if /I %%i GTR %%max (goto suivant))
goto fin
:suivant
set max=%%i%
goto :eof


Salut,
 
Il y a deux trois choses que tu n'as pas bien comprises :
- l'usage du signe % pour représenter une variable ;
- la portée de celle-ci ;
- l'expansion retardée des variables d'environnement. Revois l'aide de la commande
set
et ses exemples.
 
D'ailleurs, inutile de préciser /i dans if s'il s'agit que des chiffres. Et fais gaffe si certaines lignes sont précédées d'une ou des 0.

n°1232659
arnaud1206
Posté le 27-10-2005 à 16:18:29  profilanswer
 

Salut j ai relu tout le tuto : ))))) et j arrive a ca ( je suis sous cmd /E:on /V:on )
 

Code :
  1. set max=1
  2. for /F %%i in (d:\nombre.txt) do (if /I "%%i" GTR "%!max" (set max=%%i%
  3. echo !max! > d:\max.txt))


mais toujours rien.
J ai essaye un peu tout pour GTR "%!max" mais aucune de mes syntaxes ne convient. J aimerai savoir si ce batch est possible en .cmd et quelle est la syntaxe pour les variables retardees dans un echo echo "%!a!" ???
Mici

n°1232665
arnaud1206
Posté le 27-10-2005 à 16:20:22  profilanswer
 

PS j avais jamais utilise de delayed avant ca se voit ????
 :   pppp

n°1232833
wackevat
Posté le 27-10-2005 à 18:20:33  profilanswer
 

Non, tu n'as toujours pas compris comment utiliser le %
 

Code :
  1. for ... do (
  2.   if %%i gtr !max! set max=%%i
  3. )

n°1232854
arnaud1206
Posté le 27-10-2005 à 18:48:36  profilanswer
 

Je te remercie de m avoir consacrer qques minutes nglechau.
Serai ce abuser que te demander comment marche le % ?
Encore mici
 
 
 

n°1232859
wackevat
Posté le 27-10-2005 à 18:56:04  profilanswer
 

C'est simple : à la ligne de commande, tu utilises un seul % et dans un batch deux.
 
Par exemple : à la ligne de commandes :
for /f %i in (..) do ()
 
dans un batch :
for /f %%i in (..) do ()
 
Avec l'expansion retardée, tu utilises ! au lieu de % : donc en cas normal :
if %%i gtr %max%
 
avec l'expansion, ça devient :
if %%i gtr !max!
 
Voilà. Si je ne suis pas assez claire, dis-le moi ;)

n°1232879
arnaud1206
Posté le 27-10-2005 à 19:14:53  profilanswer
 

Tout est tres clair.
 
C est quand meme dur de s y remettre quand meme il faut bien l avouer...
 
Encore une fois mici
:p


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Shell/Batch

  Recherche du maximum d une liste de nombres[resolu]

 

Sujets relatifs
liste des imprimantes sous VB.netListe des utilisateurs sous Linux
format de cellule excel [résolu][RESOLU] Struts iterate et options
[ PHP ][ Resolu ] Upload et verification d'un fichier binaire[Résolu][VBA] Problème de "" ...
effectuer une recherche et copier au passage[vindows form] liste (treeview ?) ala outlook
numéro de feuille variable [Résolu]Textes dynamiques chinois/français [resolu]
Plus de sujets relatifs à : Recherche du maximum d une liste de nombres[resolu]


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR