Clear Filters
Clear Filters

print + sign in ans

1 view (last 30 days)
Mubashir Ali
Mubashir Ali on 18 Oct 2017
Edited: Jan on 18 Oct 2017
how to print ans like this: Result is: 1+2+3+4=10

Answers (2)

KSSV
KSSV on 18 Oct 2017
str = '1+2+3+4=10' ;
fprintf('Result is:%s\n',str)
  5 Comments
Walter Roberson
Walter Roberson on 18 Oct 2017
Edited: Walter Roberson on 18 Oct 2017
fprintf('%d+', m:n-1);
fprintf('%d = %d\n', n, TheTotal)
You definitely need to fix your vec array, whatever it is for. You are currently constructing a multidimensional array, such as zeros(2,3,4,5) for the case 2:5
Using 'sum' as the name of a variable is not recommended; it is quite common to try to use 'sum' as a variable name and then in the same code segment, try to call sum() as a function.
Jan
Jan on 18 Oct 2017
Edited: Jan on 18 Oct 2017
@Mubashir Ali: We had multiple questions in the forum concerning the redefinition of "sum" as a variable:
% Hidden in another script:
sum = rand(1, 10);
...
sum(1:100) % Why is this not working?
So better avoid using names of built-in function as variables. Use e.g. "s" instead.

Sign in to comment.


Jan
Jan on 18 Oct 2017
Edited: Jan on 18 Oct 2017
This is a homework question, but you have shown an almost working code already. I only clean it up a little bit:
m = input('from:');
n = input('to:');
if m>n
error('Invalid numbers'); % not DISP: Never proceed after an error!
end
% vec=zeros(m:n); % Neither needed, but better: vec = zeros(m-n, 1);
fprintf('result is:\n');
s = 0;
for i = m:n
s = s + i;
if i < n
fprintf('%d + ', i);
else % In the last iteration display the result also:
fprintf('%d = %d\n', i, s);
end
end

Categories

Find more on Creating and Concatenating Matrices 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!