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?
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
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é!
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
@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
@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
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
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%