--- layout: stdlib-reference --- # fmedian3 ## Description Floating-point median. ## Signature
T fmedian3<T>(
    T x,
    T y,
    T z)
    where T : __BuiltinFloatingPointType;

vector<T, N> fmedian3<T, int N>(
    vector<T, N> x,
    vector<T, N> y,
    vector<T, N> z)
    where T : __BuiltinFloatingPointType;

## Generic Parameters #### T: [\_\_BuiltinFloatingPointType](../interfaces/0_builtinfloatingpointtype-029hm/index.html) #### N : int ## Parameters #### x : [T](fmedian3.html#typeparam-T) The first value to compare. #### y : [T](fmedian3.html#typeparam-T) The second value to compare. #### z : [T](fmedian3.html#typeparam-T) The third value to compare. #### x : [vector](../types/vector/index.html)\<[T](../types/vector/index.html#typeparam-T), [N](../types/vector/index.html#decl-N)\> The first value to compare. #### y : [vector](../types/vector/index.html)\<[T](../types/vector/index.html#typeparam-T), [N](../types/vector/index.html#decl-N)\> The second value to compare. #### z : [vector](../types/vector/index.html)\<[T](../types/vector/index.html#typeparam-T), [N](../types/vector/index.html#decl-N)\> The third value to compare. ## Return value The median of the three values, element-wise if vector typed. ## Remarks For metal, this is implemented with the fmedian3 intrinsic. If any value is NaN, it is unspecified which operand is returned. ## Availability and Requirements Defined for the following targets: #### hlsl Available in all stages. #### glsl Available in all stages. #### cpp Available in all stages. #### cuda Available in all stages. #### metal Available in all stages. #### spirv Available in all stages.