Autor Tema: Conjunto de Cantor

0 Usuarios y 1 Visitante están viendo este tema.

04 Diciembre, 2020, 11:34 pm
Leído 617 veces

Ricardo Boza

  • $$\Large \color{#c88359}\pi\,\pi\,\pi\,\pi$$
  • Mensajes: 762
  • País: es
  • Karma: +1/-0
  • Sexo: Masculino
Hola,

Código: (matlab) [Seleccionar]
function [v]=extremos_cantor(paso)
% paso=n da un vector de longitud 2^(n+1) %
clc, format rat
v=[0 1];
for n=1:paso
    u=zeros(2^(n+1),1);
    h=1/(3^n);
    for k=1:length(v)
        if mod(k,2)==0
            u(2*k)=v(k);
            u(2*k-1)=v(k)-h;
        else
            u(2*k-1)=v(k);
            u(2*k)=v(k)+h;
        end
    end
    v=u;
end
end

extremoscantor(3)

       0       
       1/27   
       2/27   
       1/9     
       2/9     
       7/27   
       8/27   
       1/3     
       2/3     
      19/27   
      20/27   
       7/9     
       8/9     
      25/27   
      26/27   
       1   

Código: (matlab) [Seleccionar]
function dibuja_cantor(paso)
% paso=n da un vector de longitud 2^(n+1) %
% dibuja hasta paso=n %
clc, format rat
v=[0 1];
figure(1), close(1)
figure(1)
plot(v,[0 0],'b')
hold on
for n=1:paso
    u=zeros(2^(n+1),1);
    h=1/(3^n);
    for k=1:length(v)
        if mod(k,2)==0
            u(2*k)=v(k);
            u(2*k-1)=v(k)-h;
        else
            u(2*k-1)=v(k);
            u(2*k)=v(k)+h;
        end
        plot([u(2*k-1),u(2*k)],[n,n],'b')
    end
    v=u;
end
end

dibuja_cantor(10)



Código: (matlab) [Seleccionar]
function dibuja_cantor_plano(paso)
% paso=n da un vector de longitud 2^(n+1) %
% dibuja hasta paso=n %
clc, format rat
v=[0 1];
figure(1), close(1)
figure(1)
plot3([0 1 1 0 0],[0 0 1 1 0],[0 0 0 0 0],'b','LineWidth',1)
hold on
for n=1:paso
    u=zeros(2^(n+1),1);
    h=1/(3^n);
    for k=1:length(v)
        if mod(k,2)==0
            u(2*k)=v(k);
            u(2*k-1)=v(k)-h;
        else
            u(2*k-1)=v(k);
            u(2*k)=v(k)+h;
        end
        plot3([u(2*k-1),u(2*k),u(2*k),u(2*k-1),u(2*k-1)],...
            [u(2*k-1),u(2*k-1),u(2*k),u(2*k),u(2*k-1)],...
            [n,n,n,n,n],'b','LineWidth',1)
    end
    v=u;
end
end

dibuja_cantor_plano(10)