Les langages de programmation

Venez apprendre les langages de programmation à votre rythme
 
AccueilGalerieCalendrierFAQRechercherS'enregistrerMembresGroupesConnexion

Partagez | 
 

 Cour N°07 : Les Conditions ...

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
Groovitron
Professeur
Professeur


Nombre de messages : 201
Réputation : 4
Date d'inscription : 20/07/2010

MessageSujet: Cour N°07 : Les Conditions ...   Mar 14 Sep - 7:38

La Commande "IF" permet de faire des conditions dans un Batch pour comparer deux variables nommés VAR1 et VAR2.

Entre VAR1 et VAR2, on doit mettre un opérateur pour comparer les variables tels que :

EQU correspond à Égale à ...
LSS correspond à Inférieur à ...
LEQ correspond à Inférieur ou Égale à ...
GTR correspond à Supérieur à ...
GEQ correspond à Supérieur ou Égale à ...
NEQ correspond à Diffèrent de ...


IF %VAR1% EQU %VAR2% ECHO VAR1 est egale a VAR2 !

Traduction :

Si VAR1 est égale à VAR2, affichez le message "VAR1 est égale à VAR2 !"

En pratique cela donne :
Code:

@ECHO OFF
SET A=1
SET B=1
IF %A% EQU %B% ECHO A est egale a B !
PAUSE

NOTE : On met des "%" autour des variables pour préciser qu'on LIT la variable !

Amusez-vous à changer les valeurs des variables !

Vous pouvez mettre des parenthèses pour pouvoir exécuter plusieurs commandes à l'aide d'une seule condition !


Code:

@ECHO OFF
SET A=1
SET B=1
IF %A% EQU %B% (
ECHO A est egale a B !
PAUSE
EXIT
)
ECHO A n'est pas égale à B !
PAUSE


A suivre ...


Si vous avez des questions posez-les par MP !

... Il y a quelqu'un ? Sleep Sleep Sleep
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
koija
Professeur
Professeur


Nombre de messages : 81
Age : 21
Réputation : 11
Date d'inscription : 13/02/2011

MessageSujet: Re: Cour N°07 : Les Conditions ...   Jeu 17 Fév - 1:20

Oui ! J'ai une question à te posé ! Smile
Comment fait-on pour par exemple... Vérifier que la valeur entrée par un utilisateur est bien un nombre ?

Code:
@echo off

ECHO Entrez un nombre:
SET /p variable=
ECHO %variable%

SET /a variable=%variable%+1
ECHO %variable%

pause

Imaginons que j'entre la lettre 'g' (c'est un test que j'ai fais): le programme va afficher un g, puis ensuite en 1 (surement parce que la valeur 0 est prise à la place de 'g' parce que c'est pas un nombre). Mais c'est pas ce que je veux Smile ! Je veux que le programme redemande un nombre jusqu'à ce qu'il en donne vraiment un Wink.


EDIT: Ensuite, je te demande si il existe ELSE comme en C ou en Php ?

_________________


All humans will, without exception, eventually die.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://koija.no-ip.org
Groovitron
Professeur
Professeur


Nombre de messages : 201
Réputation : 4
Date d'inscription : 20/07/2010

MessageSujet: Re: Cour N°07 : Les Conditions ...   Ven 18 Fév - 14:21

Tu peux faire comme ceci :

Code:


@echo off
:DEMAND
CLS
SET variable=rien
ECHO Entrez un nombre:
SET /p variable=
SET Xvariable=%variable%
SET /A variable=variable
IF %variable%==%Xvariable% GOTO Suite
GOTO DEMAND
:Suite
ECHO %variable%

SET /a variable=%variable%+1
ECHO %variable%

pause


Pour répondre à ta question , oui il existe un ELSE en Batch.

J'en parlerai dans la suite du cours.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
koija
Professeur
Professeur


Nombre de messages : 81
Age : 21
Réputation : 11
Date d'inscription : 13/02/2011

MessageSujet: Re: Cour N°07 : Les Conditions ...   Ven 18 Fév - 22:00

Ah ! Je viens de comprendre... C'est vraiment pas bête ce que tu me montre oO ! C'est bien pensé, bien joué Smile ! Merci Razz
J'vais peut-être faire un programme maintenant avec ce que je sais: le jeu plus ou moins (enfin... le truc où il faut trouver un nombre entre 1 et 100, et l'ordi te dis c'est c'est plus grand ou plus petit :])

_________________


All humans will, without exception, eventually die.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://koija.no-ip.org
NASTARASTA
Nouveau Programmeur
Nouveau Programmeur


Nombre de messages : 2
Réputation : 10
Date d'inscription : 13/02/2013

MessageSujet: Re: Cour N°07 : Les Conditions ...   Mer 13 Fév - 13:35

Salut tout le monde, je suis le nouveau.
C'est super sympa
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Groovitron
Professeur
Professeur


Nombre de messages : 201
Réputation : 4
Date d'inscription : 20/07/2010

MessageSujet: Re: Cour N°07 : Les Conditions ...   Mer 13 Fév - 20:45

Bienvenue à toi, Nastarasta !
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Sprider
Fondateur
Fondateur


Nombre de messages : 285
Localisation : sur Terre !
Réputation : 9
Date d'inscription : 23/06/2007

MessageSujet: Re: Cour N°07 : Les Conditions ...   Ven 22 Fév - 14:13

NASTARASTA a écrit:
Salut tout le monde, je suis le nouveau.
C'est super sympa

Bienvenue , généralement les présentation se font dans la rubrique présentation afin d'éviter les messages hors sujets dans les topics

Mais bon vue que le forum est un peu désert je laisse passé Wink

_________________


[Vous devez être inscrit et connecté pour voir ce lien]
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://rider.keuf.net
zephir
Jeune Programmeur
Jeune Programmeur


Nombre de messages : 30
Age : 25
Réputation : 11
Date d'inscription : 19/05/2013

MessageSujet: Re: Cour N°07 : Les Conditions ...   Dim 19 Mai - 20:36

Groovitron a écrit:
Tu peux faire comme ceci :

Code:


@echo off
:DEMAND
CLS
SET variable=rien
ECHO Entrez un nombre:
SET /p variable=
SET Xvariable=%variable%
SET /A variable=variable
IF %variable%==%Xvariable% GOTO Suite
GOTO DEMAND
:Suite
ECHO %variable%

SET /a variable=%variable%+1
ECHO %variable%

pause


Pour répondre à ta question , oui il existe un ELSE en Batch.

J'en parlerai dans la suite du cours.

ta commande et tres pratique c'est vrai mais j'avous pas étre sur de savoir comment la traduire exactement pourrais-je avoir quelque précision ? x)
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
MOHAMEDCITY
Nouveau Programmeur
Nouveau Programmeur


Nombre de messages : 2
Localisation : Alger
Réputation : 10
Date d'inscription : 22/06/2014

MessageSujet: Re: Cour N°07 : Les Conditions ...   Lun 23 Juin - 9:22

Bonjour a toute l’équipe je suis un nouveau dans le site et dans la programmation
j'espère que ça va cool !!! Very Happy  Very Happy
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
MOHAMEDCITY
Nouveau Programmeur
Nouveau Programmeur


Nombre de messages : 2
Localisation : Alger
Réputation : 10
Date d'inscription : 22/06/2014

MessageSujet: Re: Cour N°07 : Les Conditions ...   Lun 23 Juin - 10:25

désolé mais j'ai pas bien compris !!
es'que vous pouvez détailler un peu plus
ça sera apprécier d'avance

merci. Surprised
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Groovitron
Professeur
Professeur


Nombre de messages : 201
Réputation : 4
Date d'inscription : 20/07/2010

MessageSujet: Re: Cour N°07 : Les Conditions ...   Mar 22 Juil - 16:27

Tu pourrais préciser les points que tu ne comprends pas ?

Je me ferais une joie de te les expliquer Smile
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
pvarcade
Nouveau Programmeur
Nouveau Programmeur


Nombre de messages : 7
Réputation : 10
Date d'inscription : 31/01/2016

MessageSujet: Re: Cour N°07 : Les Conditions ...   Dim 31 Jan - 15:35

Moi je viens de mettre au point une commande permettant de protéger des informations .
Elle demande un code 3 fois, ensuite un code puk et si la personne se trompe encore, elle autodétruit ce fichier sans laisser de traces 

@echo off
title Login
:variables
::le mot de passe
set mdp=pvarcade
::cle PUK pour verouiller le programme si je trouve pas le mdp ,si vous entrer une fausse clé 3 fois, le programme s'étteindra
::nombre d'essais
set essais=3
:login
cls
::le login
set /p reponse=Mot de passe:
::bon/faux
if %reponse%==%mdp% goto bon
echo Faux!
set /a essais=%essais%-1
if %essais% EQU 0 goto PUK
pause
goto login
:PUK
cls
::derniere chance , la clé PUK
set /p reponsepuk=CLE PUK:
if %reponsepuk%==%puk% goto bon
echo FAUX.AUTO DESTRUCTION.
ping localhost -n 3 >nul
del %0
:bon
cls
echo Mot de passe bon!
pause
goto suite
:suite et là vous pouvez mettre des infos
echo code piratés sont **************************** ...
echo.
goto suite
:suite
::votre code
end
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
pvarcade
Nouveau Programmeur
Nouveau Programmeur


Nombre de messages : 7
Réputation : 10
Date d'inscription : 31/01/2016

MessageSujet: Re: Cour N°07 : Les Conditions ...   Dim 31 Jan - 15:37

Vous en pensez quoi ?
Il y a pas d’erreurs ?
Je suis un encore débutant ...  Smile
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Groovitron
Professeur
Professeur


Nombre de messages : 201
Réputation : 4
Date d'inscription : 20/07/2010

MessageSujet: Re: Cour N°07 : Les Conditions ...   Dim 31 Jan - 16:38

Je ne vois pas d'erreur dans ton code, et je vois que tu maitrise assez bien les bases Smile
Pour les questions poste plutôt dans la section Questions / Aide pour vos programmes.


PS : Dans la réalité on sécurise jamais des fichiers avec du Batch, c'est pas fait pour ça Wink
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Contenu sponsorisé




MessageSujet: Re: Cour N°07 : Les Conditions ...   Aujourd'hui à 5:52

Revenir en haut Aller en bas
 
Cour N°07 : Les Conditions ...
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Edité les Conditions d'utilisation du forum
» Mise en conformité d'un forum par rapport aux conditions générals
» Forum ne respectant pas les Conditions Générales d'Utilisation
» Notification de non respect des conditions générales
» Conditions Générales et Suppression du Forum

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Les langages de programmation :: Les Cours de Programmation :: Cours de BATCH (.bat)-
Sauter vers: