Problemas aritméticos por lotes
El procesamiento por lotes puede realizar operaciones aritméticas. Pero si el número de ABCDEF es ilimitado, parece que la matriz se extiende mucho.
@echo off
setlocal enableelayeexpansion
set /p a=Ingrese la cantidad de a:
set /p b=Ingrese la cantidad de b:
set /p c=Ingrese la cantidad de c:
set /p d=Ingrese la cantidad de d:
set /p e=Ingrese el importe de e:
set /p f=Ingrese el monto de f:
echo.
set /p he=Ingrese el monto total de la factura:
set /p n=Ingrese el número más alto de elementos individuales:
set /p z=¿Cuántos elementos hay en la agrupación?
echo & echo Calculando. , por favor espera... y haz eco.
Para /l %%a en (0 1 %n%) haz (
Para /l %%b en (0 1 % n%) hacer (
Para /l %%c en (0 1 %n%) hacer (
Para /l %%d en (0 1 %n%) hacer (
Para /l %%e en (0 1 %n%) hacer (
Para /l %%din (0 1 %n%) hacer (
para /l %%d en (0 1 %n%) hacer (
para /l %%e en (0 1 %n%) hacer (
para /l %%f en (0 1 %n%) hacer (
set /a num=%a%*a+%b%*%b+%c%*%c+%d%*%d+ %e%*%e+ %f%*%f
if ! num!==%he% (
echo a:%%a unos b:%%b unos c :%%c unos d :%%d unos e:%%e unos f:%%f unos
set /a i+=1
if !i!==% %z% ir al final
)
)
)
)
)
)
)
)
)
)
)
)
)
:end
echo ***Lista agrupada !i!s...
Pausa>nul p>
Lo ejecuté según la muestra que me diste. Hay demasiados grupos y no pude contarlos todos incluso después de mucho tiempo. Así que puedes agregar un criterio: ABCDEF debe aparecer en cada grupo. al menos no puede ser menor que un cierto número…..
Este objetivo se puede lograr, pero parece consumir mucha memoria cuando se ejecuta.
.....
Esta es una buena idea, pero parece ocupar mucha memoria.