clear, clc
% Definimos la funcion
N = 1000; % Número de puntos
t = linspace(-5, 5, N); % Rango de t
dt = t(2) - t(1); % Paso entre puntos

% Inicializamos vectores para x(t) e y(t)
x = zeros(1, N);
y = zeros(1, N);

% Usamos el método del trapecio para integrar paso a paso
for i = 2:N
    % Definimos los extremos del intervalo de integración
    s_prev = t(i-1);
    s_curr = t(i);
    
    % Calculamos las funciones en los extremos
    f_cos_prev = cos(s_prev^2 / 2);
    f_cos_curr = cos(s_curr^2 / 2);
    f_sin_prev = sin(s_prev^2 / 2);
    f_sin_curr = sin(s_curr^2 / 2);
    
    % Aproximamos integrales con el método del trapecio
    x(i) = x(i-1) + (f_cos_prev + f_cos_curr) * dt / 2;
    y(i) = y(i-1) + (f_sin_prev + f_sin_curr) * dt / 2;
end

% Dibujamos la curva
figure;
plot(x, y, 'r', 'LineWidth', 1.5);
xlabel('x(t)');
ylabel('y(t)');
title('Curva \gamma(t) usando el método del trapecio');
grid on;
axis equal;
