function [ beta ] = base2reali( x )
% conversione in base 2  di x,  0<x<1
%   x =  beta_(-1)* 2^(-1) + beta_(-2)*2^(-2) +  + beta_(-p)*2^(-p)
% 
%   x*2 =  beta_(-1) + beta_(-2)*2^(-1) +  + beta_(-p)*2^(-p+1)
%  beta_(-1) parte intera di x*2
%   x = x*2 - beta_(-1)
%

% algoritmo

% controllo input
if (x < 0 || x >  1)
    error(' input non valido')
end

i = 0;
x = 2*x;
beta = zeros(1,100);
while ( x~=0 && i <100 )
    i = i+1; 
    beta(i) = fix(x);
    x = x - beta(i);
    x=2*x;
end


if (i > 100 ) 
warning('solo le prime cento cifre sono rappresentate')
end

beta = beta(1:i);

end

