question: note : this function is different from java.lang.math.floor . . . when n and s are `` valid '' arguments , the returned value is : math.floor n/s s ; n and s are invalid if any of following conditions are true : s is zero n is negative and s is positive n is positive and s is negative in all such cases , double.nan is returned . concode_field_sep PlaceHolder placeHolder concode_field_sep double average concode_elem_sep double ceiling concode_elem_sep double sumsq concode_elem_sep double product concode_elem_sep double mod concode_elem_sep double max concode_elem_sep double atanh concode_elem_sep double sinh concode_elem_sep double factorial concode_elem_sep double acosh concode_elem_sep short sign concode_elem_sep double sum concode_elem_sep double nChooseK concode_elem_sep double cosh concode_elem_sep double tanh concode_elem_sep double min concode_elem_sep double round concode_elem_sep double roundDown concode_elem_sep double roundUp concode_elem_sep double asinh
target: double function ( double arg0 , double arg1 ) { double loc0 ; if ( ( arg0 < 0 && arg1 > 0 ) || ( arg0 > 0 && arg1 < 0 ) || ( arg1 == 0 && arg0 != 0 ) ) { loc0 = Double . NaN ; } else { loc0 = ( arg0 == 0 || arg1 == 0 ) ? 0 : Math . floor ( arg0 / arg1 ) * arg1 ; } return loc0 ; }