Untitled
unknown
plain_text
a year ago
1.1 kB
10
Indexable
d = 20000; %[m]
% Funzione per il calcolo del sorpasso
function y = sorpasso(t)
% Definizione delle velocità
vA = @(t) 2 * sqrt(t) + cos(t + pi/2); % Velocità A [m/min]
vB = @(t) sin(t) + 0.5 * t; % Velocità B [m/min]
% Calcolo delle posizioni come integrali delle velocità
sA = integral(vA, 0, t); % Posizione di A
sB = integral(vB, 0, t); % Posizione di B
% Differenza tra le posizioni
y = sA - sB;
end
% Punto iniziale per la ricerca del sorpasso
t0 = 1; % Minuto iniziale stimato
% Trova il tempo del primo sorpasso
t_sorpasso = fsolve(@sorpasso, t0);
fprintf('Il primo sorpasso avviene a t = %.4f minuti.\n', t_sorpasso);
vA = @(t) 2 * sqrt(t) + cos(t + pi/2); % Velocità A [m/min]
vB = @(t) sin(t) + 0.5 * t; % Velocità B [m/min]
t_totale=t_sorpasso+60;
distA=integral(vA, 0, t_totale);
distB=integral(vB, 0, t_totale);
if distA>distB
fprintf('Dopo t_tot dal primo sorpasso, auto A in testa\n');
else
fprintf('Dopo t_tot dal primo sorpasso, auto B in testa\n');
end
fprintf('Macchina A: %.2f meters\n', distA);
fprintf('Macchina B: %.2f meters\n', distB);Editor is loading...
Leave a Comment