clc
clear all
syms z %creo una variable z para la funcion s(z) q usaré para evaluar
N=input('Cuántos términos N desea considerar = ');% en tu caso N=8
Z=0:0.1:1; %elementos del vector z que puedes poner el vector que quieras
if N==1 %para N=1 saldrá s(z)=z QUE NO TIENE MUCHO SENTIDO,ya q s(z)=z,así que solo se imprime
fprintf(' z s(z)\n')
fprintf(' -------------------------')
[Z' Z'] %imprime z y s(z) ...
else % si N=2,3,4.... AQUÍ SÍ COMENZARÁ para terminos mayores q 1
%creo un vecor A donde guardaré los termino del s(z)
A(1)=z;% para N=1,almacena 'z' para el 1er elemento de A
%HALLÉ LA FORMA GENERAL A(n) DE CADA TÉRMINO DEL s(z) --eso era lo q te
%pedí en el foro,pero bueno aquí está
%luego s(z)=sumatoria de los A(n) n=1,2,3...N hasta donde quieras.
%===============================
%FORMA GNRAL:
%A(n)=(-1)^(n+1)*p(n)*( z^(2*n-1) )/(2*n-1); para n=2,3,4...,N NOTAR q
% p(n) es una productoria ,es un NUUMERO
%donde p(n)=2i-1/2i para i=1,2,3...(n-1)
%=================================
for n=2:N
p=1;%inicializo la productoria con p=1 para almacenar los p
for i=1:n-1
p=p*(2*i-1)/(2*i);%aqui va la productoria
end
A(n)=(-1)^(n+1)*p*(z^(2*n-1)/(2*n-1)); %almaceno los elementos del vector A q estan en funcion de z
end
%ahora sumo los elementos del A(n)
s=0;%inicializo la sumatoria con s=0 para almacenar s
for j=1:N
s=s+A(j); %guardo la sumatoria en s q está en funcionde z
end
s;
s=inline(s) %linealizo s para evaluar y que me quede s(z),
S=s(Z); %evaluo s(Z)..Z es el vector inicial a evaluar
fprintf(' z s(z)\n')
fprintf(' -------------------------')
[Z' S'] %imprime z( que va dese [0 1] de 0.1 en 0.1) y s(z)
end
%OBS no hago tareas pero tu ejercicio (la parte matemática)estuvo entretenido,está bien explicado-creo q mucho todavia-...bueno espero q te ayude ,el codigo es corto claro si le quitas los cometarios