ACE3/addons/common/functions/fnc_toBin.sqf

35 lines
613 B
Plaintext
Raw Normal View History

/*
2015-09-17 16:25:02 +00:00
* Author: commy2
* Converts number to binary number
*
* Arguments:
2015-09-19 22:55:58 +00:00
* A number <NUMBER>
2015-09-17 16:25:02 +00:00
*
* Return Value:
2015-09-19 22:55:58 +00:00
* A binary number as string <STRING>
2015-09-17 16:25:02 +00:00
*
* Public: Yes
*/
2015-01-13 19:56:02 +00:00
#include "script_component.hpp"
2015-09-17 16:25:02 +00:00
params ["_number", ["_minLength", 1]];
2015-09-17 16:25:02 +00:00
private ["_sign", "_bin", "_rest"];
_sign = ["", "-"] select (_number < 0);
_number = round abs _number;
_bin = ["", "0"] select (_number == 0);
while {_number > 0} do {
2015-05-14 18:06:06 +00:00
_rest = str (_number mod 2);
_number = floor (_number / 2);
_bin = _rest + _bin;
};
while {count toArray _bin < _minLength} do {
2015-05-14 18:06:06 +00:00
_bin = "0" + _bin;
};
2015-09-19 22:55:58 +00:00
_sign + _bin // return