UPC/1sem/octave/06/read_num_bin.m
2019-12-17 00:29:33 +07:00

18 lines
311 B
Matlab

function n = read_num_bin(s)
neg = s(1) == "-";
if neg
s = substr(s, 2);
end
ind = find(s == '.');
decpart = s(1:ind-1);
floatpart = s(ind+1:end);
n = bin2dec(decpart);
for d = 1:length(floatpart)
if floatpart(d) == '1'
n = n + 2^(-d);
end
end
if neg
n = -n;
end
end