1

Тема: AHK: округление переменной

!w::
x = %clipboard%
send {f2}
sleep 100
send {LControl down}
send {c}
send {LControl up}
send {enter}
FileGetSize, size, %A_ScriptDir%\%clipboard%.rar, K

if (size<1000)
    z = %size% Кб
if (size>=1000)
    {
    size := (size/1000)

    z = %size% Мб
    }
clipboard = %x%
return
!e::
send %z%
return

программа, которая запоминает размер файла, который находится в папке со скриптом. Ее не нужно совершенствовать, просто есть один момент:

if (size>=1000)
    {
    size := (size/1000)

    z = %size% Мб

Читается так (очевидно но все же): если размер больше 1 мб, значит нужно в вывести в мб.
И так вопрос: как округлить переменною %size% до сотых. Задача элементарная, вот только найти негде не могу. Спасибо

2

Re: AHK: округление переменной

Функции --> Общая математика

3

Re: AHK: округление переменной

и че, ошибка:

Round(%size%, 2)

4 (изменено: creature.ws, 2011-09-14 22:15:06)

Re: AHK: округление переменной

Ну там где «ошибка» там и причина ошибки написана

Round(size, 2)

5

Re: AHK: округление переменной

Не пашет, вставляю после

size := (size/1000)

Думаю, причина в том, что переменная size - текст, потому округление не возможно. Как решить проблему (перевести текст в число)?

6

Re: AHK: округление переменной

Не могу подобрать подходящих случаю слов


size = 123123
Msgbox % Round(size := size/1000, 2)
size := 123123
Msgbox % Round(size := size/1000, 2)
size := "123123"
Msgbox % Round(size := size/1000, 2)
size := 123123q
Msgbox % Round(size := size/1000, 2)
size = 123123q
Msgbox % Round(size := size/1000, 2)

Может быть пример выше вам поможет разобраться.

7

Re: AHK: округление переменной

creature.ws спасибо.