ayuda en un ejercicio
Publicado por LAURA DICAMA (2 intervenciones) el 09/01/2016 13:18:46
Buenos días podría ayudarme con este ejercicio? he visto en el foro los primeros pasos que has puesto, pero no se como hacer para que la elipse inicial mediante movimiento se convierta en la segunda . Te paso lo que llevo."Diseñar un script que dibuje dos elipses concéntricas, de centro común el origen y semiejes a = 2, b = 6 (elipse exterior) y a = 1, b = 3 (elipse interior). Una vez trazadas las elipses, el programa debe emitir un mensaje diciendo: Pulsa una tecla para iniciar el movimiento, y detenerse hasta que se pulse una letra (usar el comando pause). Al pulsar una tecla ambas elipses deben ponerse en movimiento hasta convertirse aproximadamente en elipses concéntricas de semiejes respectivos a = 8, b = 2 (elipse exterior) y a = 4, b = 1 (elipse interior). Realizar el movimiento con un bucle de 100 pasos. Imprimir tres imágenes del movimiento: la inicial, la final y una intermedia".
fprintf('Pulsa una tecla para iniciar el movimiento');
pause;
clear
close all
figure(1)
a3=8; b3=2;
x=-a3:0.05:a3;
X=[x x(end:-1:1)];
y1=b3*sqrt(1-x.^2/a3^2);
Y=[y1 -y1(end:-1:1)];
hold on
for i=1:length(Y)-1
axis([x(1) x(end) -b3 b3])
plot([X(i) X(i+1)], [Y(i) Y(i+1)],'b')
pause(0.005)
axis('image')
end
a4=4; b4=1;
x=-a4:0.05:a4;
X=[x x(end:-1:1)];
y1=b4*sqrt(1-x.^2/a4^2);
Y=[y1 -y1(end:-1:1)];
for i=1:length(Y)-1
plot([X(i) X(i+1)], [Y(i) Y(i+1)],'b')
pause(0.005)
axis('image')
end
hold off
figure(2)
a=2; b=6;
x=-a:0.05:a;
X=[x x(end:-1:1)];
y1=b*sqrt(1-x.^2/a^2);
Y=[y1 -y1(end:-1:1)];
hold on
for i=1:length(Y)-1
axis([x(1) x(end) -b b])
plot([X(i) X(i+1)], [Y(i) Y(i+1)],'b')
pause(0.005)
axis('image')
end
a2=1; b2=3;
x=-a2:0.05:a2;
X=[x x(end:-1:1)];
y1=b2*sqrt(1-x.^2/a2^2);
Y=[y1 -y1(end:-1:1)];
for i=1:length(Y)-1
plot([X(i) X(i+1)], [Y(i) Y(i+1)],'b')
pause(0.005)
axis('image')
end
hold off
fprintf('Pulsa una tecla para iniciar el movimiento');
pause;
clear
close all
figure(1)
a3=8; b3=2;
x=-a3:0.05:a3;
X=[x x(end:-1:1)];
y1=b3*sqrt(1-x.^2/a3^2);
Y=[y1 -y1(end:-1:1)];
hold on
for i=1:length(Y)-1
axis([x(1) x(end) -b3 b3])
plot([X(i) X(i+1)], [Y(i) Y(i+1)],'b')
pause(0.005)
axis('image')
end
a4=4; b4=1;
x=-a4:0.05:a4;
X=[x x(end:-1:1)];
y1=b4*sqrt(1-x.^2/a4^2);
Y=[y1 -y1(end:-1:1)];
for i=1:length(Y)-1
plot([X(i) X(i+1)], [Y(i) Y(i+1)],'b')
pause(0.005)
axis('image')
end
hold off
figure(2)
a=2; b=6;
x=-a:0.05:a;
X=[x x(end:-1:1)];
y1=b*sqrt(1-x.^2/a^2);
Y=[y1 -y1(end:-1:1)];
hold on
for i=1:length(Y)-1
axis([x(1) x(end) -b b])
plot([X(i) X(i+1)], [Y(i) Y(i+1)],'b')
pause(0.005)
axis('image')
end
a2=1; b2=3;
x=-a2:0.05:a2;
X=[x x(end:-1:1)];
y1=b2*sqrt(1-x.^2/a2^2);
Y=[y1 -y1(end:-1:1)];
for i=1:length(Y)-1
plot([X(i) X(i+1)], [Y(i) Y(i+1)],'b')
pause(0.005)
axis('image')
end
hold off
Valora esta pregunta


0