Help needed with while loop code

Hi all. I am trying to use while-loop to determine when the cumulative rainfall for a particular month exceeds 8 mm. I have attached the file that I imported for my data. Also, this is the code that I used, but didn't work. Any help would be highly appreciated !
Testdata = importfile2('Test_data.csv', 2, 32);
%Parameters
RF=Testdata(1:31,4);
%Variables
D_var=0; % day
RF_tot = 0; % Rainfall total
%Condition
%RF_tot <=7
while RF_tot<=8
RF_tot=RF_tot+RF
D_var=D_var+1
end

1 Comment

RF (Test Data) is not used anywhere in the code?

Sign in to comment.

 Accepted Answer

Torsten
Torsten on 29 Aug 2018
Edited: Torsten on 29 Aug 2018
while RF_tot<=8 && D_var <= 30
D_var=D_var+1
RF_tot=RF_tot+RF(D_var)
end
Best wishes
Torsten.

3 Comments

@Torsten Do you mind please explaining what does RF(D_var) do here?
Many thanks
As far as I understood your code, array element RF(D_var) contains the rainfall at day D_var of a certain month. If this is the case, these values RF(1),RF(2),...,RF(31) have to be added together to get the total rainfall of the month. The condition to stop is that the total rainfall up to day "D_var" exceeds 8 mm.
Thus you could equivalently do
RF_total = 0.0;
for D_var = 1:31
RF_total = RF_total + RF(D_var);
if RF_total > 8
break
end
end
@Torsten Many thanks. This makes perfect sense. Much appreciated.

Sign in to comment.

More Answers (0)

Tags

Asked:

D.J
on 29 Aug 2018

Commented:

D.J
on 29 Aug 2018

Community Treasure Hunt

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

Start Hunting!