在Matlab中调用函数时如何显示完整的方程式?

时间:2015-05-17 08:15:24

标签: matlab

我有一个关于以我需要的方式显示输出的问题,首先让我展示我正在尝试做什么

我正在努力解决的问题:

  

编写一个名为printaltsum的函数,它接受一个整数并将1之和打印到整数,其中加法和减法是交替的。

     

例如 - printaltsum(4)必须显示完全以下内容:

     

1 = 1

     

1 + 2 = 3

     

1 + 2-3 = 0

     

1 + 2-3 + 4 = 4

请指导我正确的方向,我已经能够解决这个问题以获得最终值,但我无法让它显示它需要的格式(我得到的只是方程式的右侧)和最终价值作为答案)。

当我打电话给我的功能时,它会显示:

printaltsum(4)

1

3

0

4

ans =

 4

你可以看到我无法显示方程式,只能显示它的右侧和最终答案

这是我的代码:

function sum = printaltsum(n)



sum=0;



for i=1:n;

        if i==1

           sum=1;



        end

            if rem(i,2)==0 && i ~=1

               sum=sum+i;

            end

            if rem(i,2)==1 && i ~=1

                sum=sum-i;

            end



disp(sum)

end



end

1 个答案:

答案 0 :(得分:1)

你需要组装String来显示你的内容,matlab不会这样做。 所以只需在文本中添加相同的每个操作。

首先初始化一个空字符串:

str='';

当你对总和做一些事情时,你对文本中的字符串做同样的事情,例如:

sum=1; % setting sum to 1
str='1'% the same in text

或在循环内部:

sum=sum+i; % adding i to sum
str=[str '+' num2str(i)]% the same in text

在循环结束时,您可以显示字符串:

disp(str)

希望这有帮助