Fprintf not showing up in function output
    21 views (last 30 days)
  
       Show older comments
    
Hello, I made a function that calculates the area or volume of a matrix that is linear. And, I got the math stuff down but I am not sure how to display the text so it can output a complete sentence. Here is function code:
It shows the corresponding sentence for (A) but for (B) it shows just the value of D. 
function(D) = areavol(A)
R = rank(A); 
[rows,col] = size(A);
D = abs(det(A));
if col == 3 
    word = 'parallelepiped';
else 
    word = 'parallelogram';
if rows > R
    D = 0;
    fprintf('Error,%s is not linearly independent and the area or volume is %g',word,D);
else 
     if col == 3 
        fprintf('The volume of the parallelepiped is %g cubic units',D)
    else 
        fprintf('The area of the parallegram is %g square units',D)
    end 
end 
end
% (A) 
A = randi(10,2)
%(B)
A = fix(10*rand(3)) 
0 Comments
Answers (1)
  Namit Joshi
    
 on 24 Aug 2022
        Hi Gurinder,
When we assign "A = fix(10*rand(3))", the variable "A" stores a matrix of 3X3. In the code you have provided (I have attached the code with adjusted indentation below), when the number of columns is 3 you are only assigning to variable "word" and not printing anything. Therefore you do not see any print statement.
function D = areavol(A)
R = rank(A);
[rows,col] = size(A);
D = abs(det(A));
if col == 3
    word = 'parallelepiped';
else
    word = 'parallelogram';
    if rows > R
        D = 0;
        fprintf('Error,%s is not linearly independent and the area or volume is %g',word,D);
    else
        if col == 3
            fprintf('The volume of the parallelepiped is %g cubic units',D)
        else
            fprintf('The area of the parallegram is %g square units',D)
        end
    end
end
I assume that you missed adding an "end" in your code after the first else statement. 
Hope this helps!
0 Comments
See Also
Categories
				Find more on Software Development Tools 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!