qq_15087343
阿斯兰热风
采纳率0%
2015-08-03 09:29 阅读 1.5k

请教几个涉及到c++builder和matcom的技术问题(困扰许久,经常噩梦)

求助,谢谢!
问题一、matcom编译是否正确?
源文件(matlab语言):
%2求需求重要度
A=[ ];
[x,y] = eig(A);
% 找到y中对应最大的特征值所在列m1
[maxy, m] = find(y==max(max(y)));
% w即为矩阵A的权重!
wci=x(:,m)/sum(x(:,m))

翻译后:(c++语言)
1.(***.cpp文件)
#line 1 "c:/matcom45/bin/bcid0728.m"
//2求需求重要度
dMm(A); dMm(x); dMm(y); dMm(maxy); dMm(m); dMm(wci);

#line 2 "c:/matcom45/bin/bcid0728.m"
call_stack_begin;
#line 2 "c:/matcom45/bin/bcid0728.m"
_ A = nop_M;
#line 3 "c:/matcom45/bin/bcid0728.m"
_ /*[x,y] = /eig(A,i_o,x,y);
#line 4 "c:/matcom45/bin/bcid0728.m"
// 找到y中对应最大的特征值所在列m1
#line 5 "c:/matcom45/bin/bcid0728.m"
_ /
[maxy,m] = */find(y==max(max(y)),i_o,maxy,m);
#line 6 "c:/matcom45/bin/bcid0728.m"
// w即为矩阵A的权重!
#line 7 "c:/matcom45/bin/bcid0728.m"
_ wci = x(c_p,m)/sum(x(c_p,m)); display(wci);
call_stack_end;

  1. (g_***.cpp文件)
    #include "matlib.h"
    #pragma hdrstop

    #include "bcid0728.h"

    int main() {
    begin_scope

    initM(MATCOM_VERSION);

    #include "bcid0728.cpp"

    exitM();
    return 0;
    end_scope
    }

    问题二、问题一中的"A=[ ]"其实是一个矩阵,其值来源于c++builder中的excel文件,在运用c++builder做系统平台开发时,里面的excel表里的数值是手动改变的,以便设计人员更改数值;如何将这些数值导入A=[ ]中,运用算法计算后,并把结果也以excel表导出来。具体的介绍参见图片图片说明图片说明图片说明
    求大神帮助!

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

3条回答 默认 最新

  • qq_15087343 阿斯兰热风 2015-08-03 11:13

    有没有可以解答的大仙啊

    点赞 评论 复制链接分享
  • caozhy 从今以后生命中的每一秒都属于我爱的人 2015-08-03 22:23
    点赞 评论 复制链接分享
  • suiyunonghen 不得闲 2015-08-06 05:29

    Maltlab语言没了解过,CB关于Excel的问题,可以找NativeExcel或者Xls等控件进行处理

    点赞 评论 复制链接分享