Имя пользователя:
Пароль:
 

Показать сообщение отдельно

Ветеран


Сообщения: 1759
Благодарности: 966

Профиль | Цитировать


sov44, а что конкретно не работает? Пару замечаний:
1. Зачем все писать в одну строку? Такой необходимости вообще нет:
Код: Выделить весь код
set "dr=%USERPROFILE%\Recent"
call :Calc "%dr%" *.lnk
2. Где уверенность, что сумма "iSum" в итоге не превышает 2147483648, что является предельным для cmd.exe? Если надо посчитать, то придется складывать поразрядно. Например так:
Код: Выделить весь код
@echo off
setlocal enabledelayedexpansion

set "num1=0"
set "num2=0"
set "num3=0"

set "num1=000000000000000%1"
set "num1=%num1:~-15%"
set "num2=000000000000000%2"
set "num2=%num2:~-15%"

for /l %%i in (1,1,15) do (

    set /a "sum=!num1:~-%%i,1!+!num2:~-%%i,1!+num3"
    if !sum! geq 10 (set "num3=1" && set /a "sum-=10") else (set "num3=0")
    set "res=!sum!!res!"

)

:zerout
if "%res:~0,1%"=="0" set "res=%res:~1%" && goto:zerout

echo %res%
Это сообщение посчитали полезным следующие участники:

Отправлено: 16:23, 04-09-2012 | #16