- #1
gfd43tg
Gold Member
- 950
- 50
Homework Statement
I am working on Problem #2 in the attached PDF
Homework Equations
The Attempt at a Solution
When I run this right now, I get an error in my first conditional for if the word is not in the index. How do I say that the word does not exist in the index? Any other problems?
Code:
function Index = InsertDoc(Index, newDoc, DocNum)
IndexWords = {Index.Word};
for i = 1:numel(newDoc)
% If word is not in the Index
if isempty(Index) || Index(i).Words ~= IndexWords
Index(numel(IndexWords)+1).Word = newDoc{i};
Index(numel(IndexWords)+1).Documents = DocNum;
Index(numel(IndexWords)+1).Locations{end+1} = i;
else
end
% If the word does exist in the Index, but the occurance is unknown
% 1st occurance
if Index(i).Documents == DocNum
WordInIndex = strcmpi(newDoc{i},{Index.Word});
Index(WordInIndex).Documents = [Index(WordInIndex).Documents,DocNum];
Index(WordInIndex).Locations{end}(end+1)=i
% 2nd occurance or later
else
Index(WordInIndex.Locations{numel(Index(WordInIndex).Locations)+1}) = i;
end
end