Matlab - Fraccion binaria a decimal

 
Vista:

Fraccion binaria a decimal

Publicado por Gonzalo (17 intervenciones) el 16/09/2018 21:33:00
Hola, tengo un problema que no se programar. Necesito hacer un programa por matlab que permita pasar de una fraccion binaria a decimal. Por ejemplo:
(0.11011) en base 2 es igual a (27/32)
La forma de hacerlo es poniendo cada elemento luego del punto con exponente negativo, en el caso del ejemplo deberia ser 0.2^0 + 1.2^(-1) + 1.2^(-2)..... y asi sucesivamente hasta completar todos los numeros. El exponente se cuenta de derecha a izquierda en orden descendente..
Saludos..
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de JOSE JEREMIAS CABALLERO
Val: 8.160
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

Fraccion binaria a decimal

Publicado por JOSE JEREMIAS CABALLERO (5616 intervenciones) el 16/09/2018 23:30:51
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
clear
%b2=1100.11;
b2=0.11011
b=num2str(b2);
pe=fix(b2);
p=find(b=='.'==1);
m=num2str(pe);
m=m(end:-1:1);
s1=0;
for i=1:length(m)
    s1=s1+str2num(m(i))*2^(i-1);
end
 
d=b(p+1:end);
for i=1:length(d)
    s1=s1+str2num(d(i))*2^(-i);
end
format rat
b2=s1
format short

1
2
3
4
5
6
7
8
9
10
>> deimal_binario_a_decimal
 
b2 =
 
    0.1101
 
 
b2 =
 
      27/32
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar