O problema é o sinal ^
. Como operadora, é bit-XOR (e não to the power of
) ou um continuação ou símbolo de escape .
Você pode corrigir a linha ofensiva da seguinte forma:
set /A "Q=(( 1 - ( 1 - A ^ B )) * 100)"
ou:
set /A Q=(( 1 - ( 1 - A ^^ B )) * 100)
De sua fórmula, acho que você está procurando pela função exponent
e não bitwise-XOR
. Essa função não está disponível nos arquivos em lotes do Windows, mas há uma solução alternativa aqui