Calcul de la somme de deux variables dans un script batch

c'est ma première fois sur le débordement de pile donc s'il vous plaît être indulgente avec cette question. J'ai expérimenté la programmation par lots et L'utilisation de DOSbox pour les exécuter sur ma machine linux.

Voici le code que j'ai été en utilisant:

@echo off
set a=3
set b=4
set c=%a%+%b%
echo %c%
set d=%c%+1
echo %d%

La sortie de ce qui est:

3+4
3+4+1

comment ajouter les deux variables au lieu de faire écho à cette chaîne?

40
demandé sur Brian Tompsett - 汤莱恩 2012-05-20 20:00:27

7 réponses

Vous devez utiliser la propriété /a sur la commande set.

Par exemple,

set /a "c=%a%+%b%"

Cela vous permet d'utiliser expressions arithmétiques dans la commande set, plutôt qu'une simple concaténation.

votre code serait alors:

@set a=3
@set b=4
@set /a "c=%a%+%b%"
echo %c%
@set /a "d=%c%+1"
echo %d%

et serait sortie:

7
8
60
répondu staticbeast 2016-12-27 17:16:45

Selon cette liste utile des opérateurs [un opérateur peut être considéré comme une expression mathématique]ici, vous pouvez dire au compilateur par lots que vous manipulez des variables au lieu de nombres fixes en utilisant le += opérateur au lieu de l' + opérateur.

J'Espère Avoir Aidé!

3
répondu lolzeryest 2015-02-09 01:48:09

Vous pouvez résoudre n'importe quelle équation, y compris ajouter avec ce code:

@echo off

title Richie's Calculator 3.0

:main

echo Welcome to Richie's Calculator 3.0

echo Press any key to begin calculating...

pause>nul

echo Enter An Equation

echo Example: 1+1

set /p 

set /a sum=%equation%

echo.

echo The Answer Is:

echo %sum%

echo.

echo Press any key to return to the main menu

pause>nul

cls

goto main
1
répondu Richie 2016-10-25 04:13:20
@ECHO OFF
TITLE Addition
ECHO Type the first number you wish to add:
SET /P Num1Add=
ECHO Type the second number you want to add to the first number:
SET /P Num2Add=
ECHO.
SET /A Ans=%Num1Add%+%Num2Add%
ECHO The result is: %Ans%
ECHO.
ECHO Press any key to exit.
PAUSE>NUL
1
répondu Luke 2016-12-08 21:15:54
@ECHO OFF
ECHO Welcome to my calculator!
ECHO What is the number you want to insert to find the sum?
SET /P Num1=
ECHO What is the second number? 
SET /P Num2=
SET /A Ans=%Num1%+%Num2%
ECHO The sum is: %Ans%
PAUSE>NUL
0
répondu Tamil selvan 2016-12-08 21:19:02

vous cherchez la propriété '/a'. Ici:

@echo off
set a=3
set b=4
set/a c=%a%+%b%
echo %c%
set/a d=%c%+1
echo %d%

'/a' est pour les mathématiques. Vous ne pouvez pas entrer les lettres. La valeur de retour par défaut est de 0. La sortie sera:

7
8
-1
répondu Ghost Bladez 2017-08-28 22:05:37

voici la mienne

echo Math+ 
ECHO First num:
 SET /P a= 
ECHO Second num:
 SET /P b=
 set /a s=%a%+%b% 
echo Result: %s%
-1
répondu Kiko Temelk 2017-10-21 22:35:29