将矢量数组函数加在一起

时间:2013-01-04 22:53:44

标签: objective-c arrays math double

此代码按预期工作,从这10个输入字段中获取数字。现在,我希望它们全部加在一起。 (所有miTimesFrac结果。)任何真正有效的方法吗?

double fraction[10] = {methane, ethane, propane, nbutane, ibutane,npentane,ipentane,nhexane,nitrogen,oxygen};
double Mi[10] = {16.0426,30.064,44.0962,558.123,558.123,72.1498,72.1498,86.1766,28.0134,31.9988};
double miTimesFrac[10];
for (int i=0; i<10; ++i) miTimesFrac[i] = Mi[i] * fraction[i];

我尝试了一些事情,比如这个

double TMiTimesFrac;
for (int i=1; i<10; ++i) TMiTimesFrac = miTimesFrac[i]+miTimesFrac[i-1];

每次返回相同的值。我缺少的任何功能?

1 个答案:

答案 0 :(得分:0)

这:

double TMiTimesFrac;
for (int i=1; i<10; ++i) 
    TMiTimesFrac = miTimesFrac[i]+miTimesFrac[i-1];

不执行此任务,因为您没有跟踪TMiTimesFrac的所有先前值,因此只有最后一个值(miTimesFrac [9] + miTimesFrac [8])对TMiTimesFrac的最终值有贡献。

首先将TMiTimesFrac初始化为零。然后将每个值添加到它:

double TMiTimesFrac= 0.0;
for(unsigned int i=0; i<10; i++)
{
    TMiTimesFrac+=miTimesFrac[i];
}

现在你应该能够在不粘贴代码的情况下完成它。我建议尝试一下。