Como fazer vários cálculos com set / a em lote?

2

Por exemplo, se eu quiser fazer o seguinte cálculo, como fazê-lo funcionar?

set /A math=%%N+%code%+2*3/7
builder_247
fonte
Sua pergunta não está clara. Edite para mostrar o código relevante completo que não está funcionando e que resultado você está procurando.
dbenham

Respostas:

1

Como fazer vários cálculos com set / a em lote?

,é usado para separar expressões. Um exemplo de seu uso seria:

set /a "_num=2,_result=_num*5"

Assim:

set /A math=%%N+%code%+2*3,4/7

é uma expressão inválida.


Leitura adicional

DavidPostill
fonte
Tudo depende do contexto. set /A math=%%N+%code%+2*3,4/7pode ser uma sintaxe válida dentro de um loop FOR.
dbenham
@dbenham Oh. Você tem um exemplo?
DavidPostill
Dentro de um script em lote, suponha que o código seja definido como 4 e for %%N in (1) do (set /a math=%%N+%code%+2*3,4/7)"válido. A primeira expressão atribui 11 à matemática. A segunda expressão 4/7produz 0, mas é simplesmente descartada porque não está atribuída a uma variável. A instrução SET / A pode estar em sua própria linha, mas não posso mostrar isso em um comentário.
dbenham
@dbenham Obrigado, qual é a diferença "?
DavidPostill
por estupidez ;-) Eu pretendia fazer uma cotação antes da matemática, ou nenhuma cotação, mas funciona de qualquer maneira.
dbenham