0

我是一个新手,所以你需要跟我说新手。谢谢

这是我放在一起的一个功能。我想从电子表格中输入变量的基本公式,同时将结果吐到新列上。

function [ f ] = newgravity( m1,m2,r )

%NewtonsGravityFormula 

%   G=6.6738*10^-11 m^3*kg^-1*s^-1

g=6.6738*10^(-11);

f=g*m1.*m2./r.^2

end

这是命令窗口。注意:variables1 是工作区窗口中电子表格的名称。

m1=variables1(:,1);

m2=variables1(:,2);

r=variables1(:,3);

newgravity(m1,m2,r)=variables1(:,4)

问题:下标索引必须是实数正整数或逻辑数。我究竟做错了什么?谢谢

4

2 回答 2

2

正如鲍勃所说,我认为你搞错了。你可能想要:

variables1(:,4) = newgravity(m1,m2,r);

即将函数的输出存储在 的第 4 列中variables1

于 2013-09-24T07:44:20.290 回答
0

好吧,在文章的第一部分,您定义了一个函数 newgravity。但是在文章的第二部分,你正在创建一些值,然后说newgravity(some arguments) = something 那后半部分试图创建一个名为的新变量newgravity,但由于 m1、m2 或 r 不是“真正的正整数或逻辑数”而失败。”

我认为您需要弄清楚您实际上要做什么,以及如何解决问题。是newgravity一个函数(您传入参数,它返回一个值),还是您从电子表格创建的数字矩阵?

于 2013-09-24T03:17:32.557 回答