Keep getting error message
4 views (last 30 days)
Show older comments

Above is the pompt we are to follow to get the correct output, using fopen to get the data from a different file.
%*****CONSTANT*****
NUM_MONTHS = 12;
FIRST_YEAR = 2013;
LAST_YEAR = 2016;
%*****INPUT*****
month = 1:NUM_MONTHS;
year = FIRST_YEAR:LAST_YEAR;
% read data file
FID = fopen('lake_powell.txt','r');
lake_powell(month,year) = fscanf(FID, '%f', 1);
fclose(FID);
%{
Unable to perform assignment because the indices on the left side are not compatible
with the size of the right side.
Error in assign06b (line 22)
lake_powell(month,year) = fscanf(FID, '%f', 1);
%}
Above is the code I currently have, followed by the error message. I don't understand what I am doing wrong, could someone please explain and put me on the right track?
0 Comments
Answers (1)
Walter Roberson
on 4 Mar 2019
If the file is empty or does not start with a number, then fscanf() would return empty, and empty cannot be stored in a particular location.
Note: It is unlikely that you want to keep reading from the same location in the file. You probably do not want the fopen / fclose to be inside the loops.
0 Comments
See Also
Categories
Find more on Data Type Conversion in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!