Azzera filtri
Azzera filtri

how do i jump to a previous line in a matlab program

26 visualizzazioni (ultimi 30 giorni)
clc
tini=[21;26;29;30;23];
x= [1,2,3,0,0;3 6 -3 tini(3) 3;0,0, -2,-7,4;0,0,8,-3,tini(4);4,-5,8,0,0];
invx= inv(x);
a= [9;-3;21;tini(4);-23];
t=invx*a;
x=t-tini;
minx = min (x)
if abs(minx)>=1
tini=t;
% i need to go to line 4 and replace tini values with recent ones
else
fprintf ('your final temp is\n')
t
end

Risposte (3)

Walter Roberson
Walter Roberson il 22 Nov 2013
You cannot jump to previous lines. Use a structure such as
tini = ....
while true
x = ....
...
if abs(minx) < 1 %reversed condition
disp(...)
break
end
end

Azzi Abdelmalek
Azzi Abdelmalek il 22 Nov 2013
I am not sure that your code converge, maybe you want
clc
tini=[21;26;29;30;23];
minx=10;
while minx>=1
x= [1,2,3,0,0;3 6 -3 tini(3) 3;0,0, -2,-7,4;0,0,8,-3,tini(4);4,-5,8,0,0];
invx= inv(x);
a= [9;-3;21;tini(4);-23];
t=invx*a;
x=t-tini;
minx = min (abs(x)); % I changed this line
tini=t;
end
fprintf ('your final temp is\n')
t

Iosif
Iosif il 13 Nov 2022
D=input ('Βαθος νερου σε m ')
W=input ('Βαρος ανα μοναδα μηκους της γραμμης αγκυρωσης στο νερο σε N/m ')
Hex=input ('εξωτερικη φορτηση σε kn ')
dx=input ('οριζοντια μετατοπιση σε m ')
if dx/D>=0.3 && dx/D<=0.6
else
disp ('Δωσε διαφορετικη τιμη για το dx')
dx=input ('οριζοντια μετατοπιση σε m ')
end
I want to make my programm go to if after else and run that lines again until if line is satisfied

Categorie

Scopri di più su Entering Commands in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by