run the for loop only once Matlab

Hi everybody, i want to know if its possible to run the for-loop only once.
total_Route = zeros(4,4);
for i=1:4
total_Route(i,1)=Distance_Traveled_CM;
total_Route(i,2)=Hauptantrieb_Verbrauchte_Energie_CM;
total_Route(i,3)=Nebenaggregate_Verbrauch_Real_CM;
total_Route(i,4)= i;
Total_Distance_Traveled_CM = sum(total_Route(:,1));
set(handles.edit3, 'string',Total_Distance_Traveled_CM);
Total_Hauptantrieb_Verbrauchte_Energie_CM=sum(total_Route(:,2));
set(handles.edit4, 'string',Total_Hauptantrieb_Verbrauchte_Energie_CM);
Total_Nebenaggregate_Verbrauch_Real_CM=sum(total_Route(:,3));
set(handles.edit5, 'string',Total_Nebenaggregate_Verbrauch_Real_CM);
%%Index
set(handles.edit15, 'string',i);
after the running this code, "i" is then at the end 4 and the for-loop will be runs 4 times
i want to run the for-loop only once and "i" should be incremented after each pass
I am thankful for every help

 Accepted Answer

Azzi Abdelmalek
Azzi Abdelmalek on 31 Aug 2016
Edited: Azzi Abdelmalek on 31 Aug 2016
If you want to run it once, then don't use a for loop, to increment ii, use
ii=mod(ii,4)+1
don't use i, it's used to represent complex numbers

8 Comments

Thank u @Azzi for the quick response.
Heey Azzi
with Which value u would initialise i at the beginning, because this code is not working
ii = 0;
ii=mod(ii,4)+1;
%i is in the case always 1
if isempty(ii)
ii = 0;
end
ii=mod(ii,4)+1;
im using this code in the Gui-Window, and my programm still giving me this feedback:
Variable i is might be used befor it is defined. should ii write the below code in the Callback window ?
if isempty(ii)
ii = 0;
end
I don't know how many files you are using! are you using functions?
Try this
id=whos('ii')
if isempty(id)
ii=0
end
ii=ii+1
Hallo Azzi,
im using normal scripts, i creatd a Matrix with 4×4 Element with the Goal to save the results off each my Variable in a element off my Matrix.
Example:
the first pass: ii=0 ->> Distance_Traveled 900(first element (1,1)) the gui will take the sum of the first column wich (900+0+0+0) and write it in a static test
the second pass i=1-->Disantace traveled(2,1) 800 the gui will take the sum of the first column wich (900+800+0+0) and write it in a static test and same thing should happen with the other column
i want through the gui every time to write the summe of a column of my Matrix and write it in a satic text box. i
hope, u catch what i mean
Alex
Alex on 1 Sep 2016
Edited: Alex on 1 Sep 2016
i think the Problem is that ii doesnt keep his last Value
id=whos('ii')
if isempty(id)
ii=0
end
ii=ii+1
because with this code will be ii always 1.

Sign in to comment.

More Answers (1)

Why not simply replace this line
for i=1:4
with this line:
i = 1;
It will do the code just once since it won't even be in a loop.

Categories

Find more on Loops and Conditional Statements in Help Center and File Exchange

Tags

Asked:

on 31 Aug 2016

Edited:

on 1 Sep 2016

Community Treasure Hunt

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

Start Hunting!