selectMax: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
mNo edit summary
m (Text replacement - "↵↵</sqf>" to " </sqf>")
 
(61 intermediate revisions by 6 users not shown)
Line 1: Line 1:
{{Command|= Comments
{{RV|type=command
____________________________________________________________________________________________


|arma3dev|= Game name
|game1= arma3
|version1= 1.66


|1.65|= Game version
|gr1= Arrays
____________________________________________________________________________________________


|Returns the array element with [[max]]imum numerical value. Engine solution to [[BIS_fnc_greatestNum]] and [[BIS_fnc_findExtreme]]. Any [[Boolean]]s will be converted to [[Number]]s: [[true]] <nowiki>=</nowiki>> 1, [[false]] <nowiki>=</nowiki>> 0. Other non [[Number]] elements are also permitted, but their value will be treated as 0.|= Description
|descr=Returns the array element with [[max]]imum numerical value. Engine solution to [[BIS_fnc_greatestNum]] and [[BIS_fnc_findExtreme]]. Therefore it is expected that supplied array consists of [[Number]]s only. [[Boolean]]s however are also supported and will be evaluated as [[Number]]s: [[true]] - 1, [[false]] - 0.  [[nil]] value treated as 0.  
____________________________________________________________________________________________
{{Feature|warning|Other non [[Number]] elements (not recommended) will be evaluated as 0 and '''Bad conversion: scalar''' message will be logged into .[[rpt]].}}


|'''selectMax''' array |= Syntax
|s1= [[selectMax]] array


|p1= array: [[Array]] - array of anything
|p1= array: [[Array]] - array of [[Number]]s


| [[Anything]] - element with [[max]]imum numerical value |= Return value
|r1= [[Anything]] - element with [[max]]imum numerical value
____________________________________________________________________________________________
 
 
|x1= <sqf>_max = selectMax [1,2,3,4,5]; //5</sqf>
|x1= <code>_max = [[selectMax]] [1,2,3,4,5]; //5</code> |= Example 1
|x2= <sqf>
|x2= <code>// Same as, for example:  
// Same as, for example:  
_max = _a [[max]] _b [[max]] _c [[max]] _d;
_max = _a max _b max _c max _d;
// Only faster:
// Only faster:
_max = [[selectMax]] [_a,_b,_c,_d];</code> |= Example 1
_max = selectMax [_a,_b,_c,_d];
____________________________________________________________________________________________
</sqf>


| [[selectMin]], [[min]], [[max]], [[selectRandom]], [[select]]|= See also
|seealso= [[selectMin]] [[min]] [[max]] [[selectRandom]] [[select]] [[selectRandomWeighted]]
}}
<dl class="command_description">


}}
<dt></dt>
<dd class="notedate">Posted on 2016-12-19 - 02:05 (UTC)</dd>
<dt class="note">[[User:Longbow|Longbow]]</dt>
<dd class="note">
Returns either number or boolean value, in case max value in array 0, command will return either 0 or false, which ever comes first.
Same for 1 and true values.
<sqf>
selectMax [false,0] // returns false
selectMax [0,false] // returns 0
selectMax [true,1] // returns true
selectMax [1,true] // returns 1
</sqf>
in case all values are equal or less than zero, command may also return other type of values
<sqf>selectMax ["",false,0,-1] // returns ""</sqf>
if nil value appears in array, other values are equal or less than zero, command returns nil
</dd>


[[Category:Arma_3:_New_Scripting_Commands_List|{{uc:{{PAGENAME}}}}]]
</dl>
[[Category:Scripting Commands Arma 3|{{uc:{{PAGENAME}}}}]]
[[Category:Scripting Commands|{{uc:{{PAGENAME}}}}]]

Latest revision as of 19:48, 3 September 2024

Hover & click on the images for description

Description

Description:
Returns the array element with maximum numerical value. Engine solution to BIS_fnc_greatestNum and BIS_fnc_findExtreme. Therefore it is expected that supplied array consists of Numbers only. Booleans however are also supported and will be evaluated as Numbers: true - 1, false - 0. nil value treated as 0.
Other non Number elements (not recommended) will be evaluated as 0 and Bad conversion: scalar message will be logged into .rpt.
Groups:
Arrays

Syntax

Syntax:
selectMax array
Parameters:
array: Array - array of Numbers
Return Value:
Anything - element with maximum numerical value

Examples

Example 1:
_max = selectMax [1,2,3,4,5]; //5
Example 2:
// Same as, for example: _max = _a max _b max _c max _d; // Only faster: _max = selectMax [_a,_b,_c,_d];

Additional Information

See also:
selectMin min max selectRandom select selectRandomWeighted

Notes

Report bugs on the Feedback Tracker and/or discuss them on the Arma Discord or on the Forums.
Only post proven facts here! Add Note
Posted on 2016-12-19 - 02:05 (UTC)
Longbow
Returns either number or boolean value, in case max value in array 0, command will return either 0 or false, which ever comes first. Same for 1 and true values.
selectMax [false,0] // returns false selectMax [0,false] // returns 0 selectMax [true,1] // returns true selectMax [1,true] // returns 1
in case all values are equal or less than zero, command may also return other type of values
selectMax ["",false,0,-1] // returns ""
if nil value appears in array, other values are equal or less than zero, command returns nil