Script de commandes sous Windows
Résolu
Bouuuhx
Messages postés
3
Date d'inscription
Statut
Membre
Dernière intervention
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonjour,
Je débute en informatique, et je dois écrire une commande qui calcule la variable d'environnement MAXI et affiche le maximum d'une liste d'entiers passée en paramètres (sachant que le nombre de paramètres n'est pas défini).
J'ai tenté d'écrire le script mais quand je l'exécute sur l'invite de commande, il est précisé que la syntaxe est incorrecte. Alors si quelqu'un pourrait m'aider à comprendre pourquoi et à me corriger ce serait vraiment sympa.
Voici ce que j'ai écrit sous Notepad++ :
@echo off
if "%1"==" " goto Usage
if "%1"=="/?" goto Usage
set MAXI=0
:tantque
if "%1"==" " goto ftq
if /I %1% GTR %MAXI% set MAXI=%1
shift
goto tantque
:ftq
echo Le maximum est : %MAXI%
goto fin
:Usage
echo Usage : Maximum entiers exemple : Maximum 4 5 3
:fin
Merci d'avance à ceux ou celles qui prendront de leur temps pour me répondre
Je débute en informatique, et je dois écrire une commande qui calcule la variable d'environnement MAXI et affiche le maximum d'une liste d'entiers passée en paramètres (sachant que le nombre de paramètres n'est pas défini).
J'ai tenté d'écrire le script mais quand je l'exécute sur l'invite de commande, il est précisé que la syntaxe est incorrecte. Alors si quelqu'un pourrait m'aider à comprendre pourquoi et à me corriger ce serait vraiment sympa.
Voici ce que j'ai écrit sous Notepad++ :
@echo off
if "%1"==" " goto Usage
if "%1"=="/?" goto Usage
set MAXI=0
:tantque
if "%1"==" " goto ftq
if /I %1% GTR %MAXI% set MAXI=%1
shift
goto tantque
:ftq
echo Le maximum est : %MAXI%
goto fin
:Usage
echo Usage : Maximum entiers exemple : Maximum 4 5 3
:fin
Merci d'avance à ceux ou celles qui prendront de leur temps pour me répondre
A voir également:
- Script de commandes sous Windows
- Invite de commande windows - Guide
- Clé de produit windows 10 gratuit - Guide
- Montage video windows - Guide
- Windows ne démarre pas - Guide
- Windows movie maker - Télécharger - Montage & Édition
1 réponse
salut,
la première chose c'est que tu ne test que %1, soit le premier paramètre. Je ne sais pas comment voir dynamiquement les paramètres donc je pense que tu as à faire 3 tests.
soit :
naga
la première chose c'est que tu ne test que %1, soit le premier paramètre. Je ne sais pas comment voir dynamiquement les paramètres donc je pense que tu as à faire 3 tests.
soit :
@echo off
if "%1"==" " goto Usage
if "%1"=="/?" goto Usage
set MAXI=0
if "%1"==" " goto ftq
if /I %1 GTR %MAXI% set MAXI=%1
if /I %2 GTR %MAXI% set MAXI=%2
if /I %3 GTR %MAXI% set MAXI=%3
goto ftq
shift
:ftq
echo Le maximum est : %MAXI%
goto fin
:Usage
echo Usage : Maximum entiers exemple : Maximum 4 5 3
:fin
naga
Le problème de ta solution c'est que je ne sais pas à l'avance combien de paramètres il sera mis, or si j'ai bien compris dans ce que tu as écrit il y a 3 paramètres qui seront testés
Du coup j'ai réussi à me corriger mon script afin qu'il fonctionne avec le code suivant :
@echo off
if "%1"=="" (
echo Il n'y a aucun parametre !
goto Usage )
if "%1"=="/?" goto Usage
set MAXI=%1
:tantque
if "%1"=="" goto ftq
if /I %1 GTR %MAXI% ( set MAXI=%1 )
shift
goto tantque
:ftq
echo Le maximum est : %MAXI%
goto fin
:Usage
echo Usage : Maximum insererEntiers Exemple : Maximum 4 1 7 3
:fin
En tout cas merci d'avoir pris le temps de m'aider