Описание функции


Floor

Округляет число до ближайшего целого в меньшую сторону.

Floor(expression)

Параметры

expression Любое допустимое числовое выражение.

Возвращаемое значение

Возвращает округлённое число.

Примечания

Функцию можно подключить через команду exect

См. также

Ceiling, Round, Int, Number

Примеры:
 Как создать кнопку?

; i!i!i!i!i!i!i!i!i!i!i!i!i!i!i!i!i! Комментарий i!i!i!i!i!i!i!i!i!i!i!i!i!i!i!i!i!
Floor(4.8) ; возвращает 4
Floor(4.5) ; возвращает 4
Floor(4.3) ; возвращает 4
Floor(4) ; возвращает 4
Floor(-4.3) ; возвращает -5
Floor(-4.5) ; возвращает -5
Floor(-4.8) ; возвращает -5
Floor(-4) ; возвращает -4
; i!i!i!i!i!i!i!i!i!i!i!i!i!i!i!i!i!i!i!i!i!i!i!i!i!i!i!i!i!i!i!i!i!i!i!i!i!i!i!i!i!i!i!i!i!i!i!i!

exect=Floor(4.8) GLOBALEXECT<a> ;; округляет число до ближайшего целого в меньшую сторону (возвращает 4)

exect=Floor(-4.8) GLOBALEXECT<a> ;; округляет число до ближайшего целого в меньшую сторону (возвращает -5)

exect=$var_ifile=##<info=x5>||$var_ifile=Floor($var_ifile/2) marks=1||numb<$var_ifile> ;; выделить первую половину файлов в активной панели

exect=$var_ifile=##<info=x5>||$var_stc=Floor($var_ifile/2)&'f' sends=[tc=AL$var_stc]??-1 GLOBALSENDS<a> ;; получить список первой половины файлов в активной панели

xlist=PS<%P%N//1> exect=$var_ifile=Floor(GLOBALXLIST<0>/2) GLOBALXLIST<a1:$var_ifile> ;; получить список первой половины файлов папки под курсором

xlist=PS<%P%N//1> exect=$var_ifile=Floor(GLOBALXLIST<0>/2) delss=GLOBALXLIST<t1:$var_ifile> ;; получить список первой половины файлов папки под курсором

xlist=PS<%P%N//1//0> exect=$var_ifile=Floor(GLOBALXLIST<0>/2) delss=GLOBALXLIST<t1:$var_ifile>||1 ;; удалить первую половину файлов в корне папки под курсором

slist=%WL forpgs <FOR> 1 <TO> GLOBALSLIST<0> xlist=PS<GLOBALSLIST<:INDEX:>//1//0> exect=$var_ifile=Floor(GLOBALXLIST<0>/2) delss=GLOBALXLIST<t1:$var_ifile>||1 <NEXT> ;; в каждой из выделенной папки удалить в корне первую половину файлов

sends=<info=o3%P%N//>??1 exect=$var_n=Floor('GLOBALSENDS<1>')||$var_n=$var_n<=1?1:($var_n<=10?2:($var_n<=100?3:($var_n<=500?4:5)))||_ViewValues($var_n) ;; пример получения размера папки и присвоения чисел диапазонов: меньше 1мб - 1, от 1 до 10мб - 2, от 10 до 100 мб -3, от 100 до 500мб, от 500 и выше - 5

itray=3 wends=-1||formt<63,56,54,51,55> slist=%WL <FOR> 1 <TO> GLOBALSLIST<0> exect=$var_n=Floor('<info=o3GLOBALSLIST<:INDEX:>//>')||$var_n=$var_n<=1?1:($var_n<=10?2:($var_n<=100?3:($var_n<=500?4:5)))||$var_p='%%COMMANDER_PATH%%\Personal\commands\fold\$var_n.ico' icoft=GLOBALSLIST<:INDEX:>||0||$var_p||foldicon<favicon!!1!!1> <NEXT> attrb=FOLDC<$GLOBALSLIST//1//0//Desktop.ini>||-HS!!0 textx=FOLDC<$GLOBALSLIST//1//0//Desktop.ini>||&&([^^]+)!!$1@CRLFInfoTip=GLOBALWENDS<1>||backup<0> attrb=FOLDC<$GLOBALSLIST//1//0//Desktop.ini>||&#43;HS!!0 ;; назначить выделенным папкам иконки (в зависимости от размера папки будут назначены разные иконки) путь к папке с иконками %%COMMANDER_PATH%%\fold\ имена иконок 1,2,3,4,5

itray=3 exect=Floor(Sqrt(<info=x10>)) slist=%WL wlist=$GLOBALSLIST||##<info=i1:://>||formt<1,20> xlist=$GLOBALSLIST||##<info=i2:://>||formt<1,20> imgnz=%WL||"%t"//0//"%O"-@<info=s47>||GLOBALEXECT<1>x#||framewh<#|5|5>||resizeimg<GLOBALWLIST<1>|GLOBALXLIST<1>> ;; склеить выделенные изображения по высоте, создав в активной панели вертикальное объединение с максимальным приближением выходного изображения к квадрату, с именем первого изображения + системное время (рамка в 5px по краям и между склеенными изображениями случайным цветом) и кадрирование всей группы перед объединением в размер наименьшего изображения
itray=3 exect=$var_i=Floor(Sqrt(<info=x10>)) slist=%WL wlist=$GLOBALSLIST||##<info=i1:://>||formt<1,21> xlist=$GLOBALSLIST||##<info=i2:://>||formt<1,21> imgnz=$GLOBALSLIST||"%p"//0//"%O"-max-@<info=s47>||GLOBALEXECT<1>x#||jpg||framewh<#|5|5>||resizeimg<GLOBALWLIST<1>|GLOBALXLIST<1>> wlist=$GLOBALWLIST||formt<1,5> xlist=$GLOBALXLIST||formt<1,5> imgnz=$GLOBALSLIST||"%p"//0//"%O"-min-@<info=s47>||GLOBALEXECT<1>x#||jpg||framewh<#|5|5>||resizeimg<GLOBALWLIST<1>|GLOBALXLIST<1>> ;; объединить выделенные изображения по высоте, создав в активной панели два вертикальных объединения с максимальным приближением выходного изображения к квадрату, с именем первого изображения + системное время (рамка в 5px по краям и между склеенными изображениями случайным цветом) и кадрирование всей группы перед объединением в размер наименьшего и наибольшего изображения
slist=LISTF<11/125/1237/23456>||$$=>||?V|$$|Floor(::/10)*10 GLOBALSLIST<a> ;; пример округления цифр к 10-ти в меньшую сторону

blist=%WL||?V|##|Floor(<info=i8::>/2)||^^circle~~||?V|$$|'--'&Ceiling(<info=i8::>/2) GLOBALBLIST<a> ;; для выделенных изображений получить округлённые значения наименьшей стороны
wlist=[tc=AM] fends=<info=i400$GLOBALWLIST|Floor(#1/2),Floor(#3/2)>??-4 GLOBALFENDS<a> ;; получить наибольшую половинную ширину и высоту выделенных изображений округлённую в меньшую сторону
exect=$var_i=Number(ClipGet())||$var_n=Floor($var_i)-Mod(Floor($var_i),2)||_ViewValues($var_n) ;; если в буфере обмена число нечётное или с плавающей точкой, то округлить его до ближайшего чётного числа в меньшую сторону

exect=$var_i=Number(<info=t1-1>)||$var_n=Floor($var_i)-Mod(Floor($var_i),2) bufsr=#L1:$var_n||&&(.+)\R(.+)!!$2~~-~~$1 ;; в содержимом буфера обмена объединить каждые две строки в одну (нечётные - чётные)

renms=%WL||$$-cntr<1:6|1|1>-img-||?V|$$|:NUMBER:-Floor(:NUMBER:/6)*6||upd<1> ;; пример переименования выделенных объектов и получение нескольких счётчиков

renms=%WL||$$-cntr<1:6|1|1>-img-||?V|>>|Assign('var_n',:NUMBER:-Floor(:NUMBER:/6)*6,2)||?V|^^|$var_n=0?6:$var_n||upd<1> ;; пример переименования выделенных объектов и получение нескольких счётчиков

slist=[tc=AM] zends=@[tc=AP] zlist=$GLOBALSLIST||?V|##|Floor(<info=f27:://>/3)||$$m||inline<!!,> splis=$GLOBALSLIST||GLOBALZENDS<1>||GLOBALZLIST<1>||paths<|@|#|1>||upd<1> ;; разбить в активную панель выделенные файлы на части, каждый файл разбивается индивидуально на 3 или 4 части, исходя из его округленного размера

cends=abcdefghijklmnopqrstuvwxyz??-1||?V|##|StringRegExp('::','(?s).{1,'&(Floor(StringLen('::')/2))&'}',3) GLOBALCENDS<a> ;; разбить строку на 2 равные части

zends=@[tc=AP]??1 aends=<info=s101> bends=<info=n49|(GLOBALAENDS<1>*1000)-10800000> funjs=Datatime dends=$GLOBALFUNJS1??-1||$$@CRLFGLOBALBENDS<x1> alist=$GLOBALDENDS||?V|##|Floor(::/60000) GLOBALALIST<a> creat=GLOBALZENDS<1>||time.txt||content<$GLOBALDENDS>||code<4>||owrite<2|1>||empty<1> ;; получить время в миллисекундах прошедшее от 1970/01/01 00:00:00 и записать в файл


© Аверин Андрей для Total Commander Image  Averin-And@yandex.ru