QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 3333|回复: 2
打印 上一主题 下一主题

mathematica c语言混合编程的问题 大神求救

[复制链接]
字体大小: 正常 放大

1

主题

8

听众

8

积分

升级  3.16%

  • TA的每日心情

    2014-2-6 19:56
  • 签到天数: 2 天

    [LV.1]初来乍到

    自我介绍
    啥都没有
    跳转到指定楼层
    1#
    发表于 2014-1-16 17:36 |只看该作者 |正序浏览
    |招呼Ta 关注Ta
    目的是算出cos(x)5次方的程序,整个程序为,结果却不对,调试了很长时间也没有搞定,向大神求助了
    ! l, i! M6 i: Z% Z' S+ I#include "stdafx.h", {1 q9 A2 |: C) M
    $ Y* I9 Y  W7 S
    #include <stdio.h>$ R- K; v3 j7 d
    #include <stdlib.h>
    " Y9 T; O  O) e+ U#include <string.h>
    0 a0 R1 O/ @2 x  c5 n0 }$ v4 u  e+ o7 a4 J$ C
    #include "mathlink.h"
    5 x# }, n1 v+ b- U& N: k+ l4 ?1 d8 b9 O
    double f(MLINK lp,double x);3 c( t5 J3 I0 y) i

    : F1 }# r7 G( G) p8 D0 Fint main(), Q: g5 n( T$ {8 h) t0 U0 p+ h) F
    {
    + k: j) [+ N, |1 @        int argc=4;
    ' K9 }) e. x& _        char*argv[5] ={"-linkname", "F:\\Program Files\\Wolfram Research\\Mathematica\\8.0", "-linkmode", "launch", "NULL"};//指定连接方式. ?; X' o! v( e% W4 j' X/ E) O/ X
            MLEnvironment env;//mathlink的环境变量
    . v5 w. Z) K2 h8 x        MLINK lp;* z9 w& f1 m( q. N4 s9 C. ?
            env=MLInitialize(NULL);//初始化
    & z/ \" @  D2 q0 N( z# p        if(env==NULL)) K" Q: s3 v! S% A
            {+ }2 Z: C+ Q; e$ X4 Q4 e7 b
                    printf("initialization error!\n");  Q: m" f' W! l2 W
                    return 1;! j$ Q0 l* Z& k! D# S9 J# V: V6 e/ i
            }/ Z0 G( b+ L; a
            lp=MLOpen(argc, argv);
    % q( B; }5 v$ ~1 j4 B        if(lp==NULL)
    & M( n" G; f6 C: M        {1 w9 O* c4 o. z* X
                    printf("open error!\n");5 Q) J8 M8 A0 i5 W
                    return 1;/ }. Q2 }6 x% B3 B6 f- j2 u: \
            }
    / u  C! _9 a9 @( o+ o+ H5 m        for(int i=1;i<=10;i++)
    / u( i( Q1 \1 |8 f                printf("cos(%d)=  %lf\n",i,f(lp,i));//计算f(1)至f(10)
    - X$ v* Z0 V  b5 h5 \& `; _
    4 K& u6 A' O8 c5 j8 @$ {        MLClose(lp);7 \; ^5 u1 `/ J8 k+ G2 F' L
            MLDeinitialize(env);
    1 o$ X3 Q% `7 I$ H" X! Y
    1 h+ M7 a5 e; d( q7 n        //printf("Hello World!\n");
    6 K& Y: D! H2 X2 K- v        return 0;; o, Y, J% P5 y  i8 W
    }2 R& M" {4 F  s0 D, u
    # }6 L( r; H2 R' k8 Q
    6 t( Q& I" \8 ]7 Q% l
    double f(MLINK lp, double x)7 P1 c$ r* U6 |/ ~* G* _
    {* `( l" m% @' Z
            double res;
    + t* X) a2 K! l1 ?- L        int pkt;
    8 @5 h: z, z7 l2 h" J        static int done=0;
    3 C1 l$ U/ c' t  j        if(!done)+ k( S& F( Q; t. q$ c- M8 i6 R
            {
    4 x% s9 O6 B6 Q+ k3 \' G3 Y. y                //char* expression="cos(x)^5";
    4 e6 O5 o* O  j) R, S" K                MLPutFunction(lp,"EvaluatrPacket",1);2 n; k3 w2 g* N8 s/ S
                    MLPutFunction(lp,"ToExpression",1);/ c3 w8 j* y2 m& @- M
                    MLPutString(lp,"cos(x)^5");
    ; @, f9 V4 h6 e4 W. j             MLEndPacket(lp);
    0 i9 k% l+ i: ~% k! m                while((pkt=MLNextPacket(lp),pkt)&&pkt!=RETURNPKT);/ k8 f1 d( @: M$ o0 E2 Q
                    MLNewPacket(lp);4 j0 ?$ V8 [; d' M# P
                    done=1;, j5 ~) s5 N: D2 F- _3 Q8 U5 i
            }
    ; S! g& [; P' P        MLPutFunction(lp,"EvaluatePacket",1);
    9 O) y& M3 a, B8 o9 _+ J2 I6 B' l% f        MLPutFunction(lp,"N",1);
    . a/ u, W* D8 |, C% N6 V6 L        MLPutFunction(lp,"F",1);
    9 \; F1 ]/ i; j6 G$ K) J        MLPutReal(lp,x);
    / E. u( P1 o5 ]2 H4 y" z/ r  T        MLEndPacket(lp);! h4 p7 r9 d+ U3 _- \
            while((pkt=MLNextPacket(lp))&&pkt!=RETURNPKT);3 o/ D; q' |3 y6 K$ W
            MLNewPacket(lp);
    ) C! ~7 _& i$ u; }* h0 c' |        MLGetReal(lp, &res);
    # I6 z% m1 O- o) y        return res;( P. |. T7 ~4 F' ?* S1 d  o, A( |4 h) I
    }$ G1 n6 N$ G! r1 i. t

    % _, b- C2 @6 e7 y- r1 c
    zan
    转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信

    1

    主题

    8

    听众

    8

    积分

    升级  3.16%

  • TA的每日心情

    2014-2-6 19:56
  • 签到天数: 2 天

    [LV.1]初来乍到

    自我介绍
    啥都没有
    回复

    使用道具 举报

    1

    主题

    8

    听众

    8

    积分

    升级  3.16%

  • TA的每日心情

    2014-2-6 19:56
  • 签到天数: 2 天

    [LV.1]初来乍到

    自我介绍
    啥都没有
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2026-8-23 22:22 , Processed in 0.512145 second(s), 64 queries .

    回顶部