Matlab 如何在不运行代码的情况下确定代码的结果

Matlab 如何在不运行代码的情况下确定代码的结果,matlab,Matlab,如果给我下面的代码,我怎么知道结果y值是什么。如果这是一个简单的问题,我很抱歉,但我发现这类问题非常困难 对于foo(-1,10) 函数y=foo(x,a) 对于k=-1:0 b=x-k; 而(x>-2)和&(x-2)和(10-2)和(10代码>等于 b>代码> +你得到的值 x>/p>下次你也可以考虑使用Matlab。这允许你在程序中的任何地方放置止损器,让你看到在那一点上所有变量的值。下次你也可以考虑使用这允许你在程序中的任何地方设置停止点,让你可以看到在那一点上所有变量的值。我不明白x如何

如果给我下面的代码,我怎么知道结果y值是什么。如果这是一个简单的问题,我很抱歉,但我发现这类问题非常困难

对于foo(-1,10)

函数y=foo(x,a) 对于k=-1:0 b=x-k; 而(x>-2)和&(x<2) x=x+a+1; 终止 终止 y=b+x; 终止 当运行程序时,我可以看到b=10,但我不明白你是怎么得到的。如果有人能把这件事告诉我,我将不胜感激

谢谢大家!

从顶部开始:

foo(x,a)
有两个参数:
x
a

foo(-1,10)
意味着
x=-1
a=10

从那里往下走每一条线

b=x-k
将以
b=-1+(循环当前迭代的k值

然后对
while
循环执行相同的操作

x=-1+10+1

所以

x=10

现在获取该值并将其插入
while
循环条件:

(10>-2)和(10<2)

这个条件是真的吗?不是。所以你继续下一次循环的
for循环

最后,您将
y
设置为等于
b
的值+从顶部开始设置
x
的值:

foo(x,a)
有两个参数:
x
a

foo(-1,10)
意味着
x=-1
a=10

从那里往下走每一条线

b=x-k
将以
b=-1+(循环当前迭代的k值

然后对
while
循环执行相同的操作

x=-1+10+1

所以

x=10

现在获取该值并将其插入
while
循环条件:

(10>-2)和(10<2)

这个条件是真的吗?不是。所以你继续下一次循环的
for循环


最后,你设置<代码> y>代码>等于<代码> b>代码> +你得到的值<代码> x>/p>下次你也可以考虑使用Matlab。这允许你在程序中的任何地方放置止损器,让你看到在那一点上所有变量的值。下次你也可以考虑使用这允许你在程序中的任何地方设置停止点,让你可以看到在那一点上所有变量的值。我不明白

x
如何能够满足
while
循环条件。无论我的
k
值是多少,都不会
x=10
吗?也许我误解了如果
for循环
但不能
k
仅为-1和0,那么如何才能得到
b=10
?while循环只有一次迭代,当
k=0
时设置
x=10
,然后
b=10-0
哦,好的,现在我得到了。非常感谢!)我不明白
x
如何才能满足
while
循环条件。无论我的
k
-值是多少,我都不会
x=10
吗?也许我误解了
for循环的迭代次数,但
k
不能只为-1和0,如果是这样,我怎么才能得到
b=10
?while循环只会进行一次迭代,设置
x=10
k=0
时,然后
b=10-0
哦,好的,现在我知道了。非常感谢!)
function y = foo(x, a)
for k=-1:0
b=x-k;
while (x > -2) && (x < 2)
x=x+a+1;
end
end
y = b + x;
end