Azzera filtri
Azzera filtri

For loop.how can I do it right?

1 visualizzazione (ultimi 30 giorni)
Amjad AL Hasan
Amjad AL Hasan il 28 Apr 2021
Commentato: Amjad AL Hasan il 28 Apr 2021
How can I do it right?
I am binger with MATLAB and I try to learn it. I have a data File with two columns ( x and y). The column x has content ages for the students and I should calculate the time between the ages using a "For" loop :
data=dlmread('volcanoes.dat')
x=data(:,2);
n=length(x);
for i=1:1:n
t(i)=x(i+1)-x(i)
end
plot(x,t,'bo');
but there's something wrong with my loop. I don’t know how to write it. How can I do it right?

Risposta accettata

Image Analyst
Image Analyst il 28 Apr 2021
You can't go to n+1 when n is the last element of the vector. Try this:
data=dlmread('volcanoes.dat')
x=data(:,2);
n=length(x);
for i=1:n - 1
t(i)=x(i+1)-x(i)
end
plot(x, t, 'bo');
or better yet.
data = dlmread('volcanoes.dat');
x = data(:, 2);
t = diff(x); % Subtracts each element from the next one in the list.
plot(x(1:end-1), t , 'bo-', 'LineWidth', 2, 'MarkerSize', 16);
grid on;
xlabel('x', 'FontSize', 20);
ylabel('t', 'FontSize', 20);

Più risposte (0)

Categorie

Scopri di più su Downloads in Help Center e File Exchange

Prodotti

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by