clc, clear
n=input('¿Cuántos intervalos va ingresar?');
datos=repmat(0,[n 5]);
i=1;
while i<=n
d=input('Ingrese el límite inferior del intervalo:');
datos(i,1)=d;
d=input('Ingrese el límite superior del intervalo:');
datos(i,2)=d;
d=input('Ingrese la frecuencia del intervalo:');
datos(i,3)=d;
i=i+1;
end
%La cuarta columna de la matriz "datos" es la frecuencia relativa
for i=1:n
datos(i,4)=datos(i,3)/sum(datos(:,3));
end
%La quinta columna de la matriz "datos" es la frecuencia relativa acumulada
datos(1,5)=datos(1,4);
for i=2:n
datos(i,5)=datos(i-1,5)+datos(i,4);
end
posicion_intervalo=0;
for i=1:n
if datos(i,5)>=0.5
posicion_intervalo=i;
break
end
end
total=sum(datos(:,3));
A=(datos(posicion_intervalo,2)-datos(posicion_intervalo,1));
Fme=sum(datos(1:(posicion_intervalo-1),3));
fme=datos(posicion_intervalo,3);
mediana=datos(i,1)+((total/2-Fme)/fme)* A;
disp('La mediana es:');
disp(mediana);
No hay comentarios:
Publicar un comentario