QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 3242|回复: 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次方的程序,整个程序为,结果却不对,调试了很长时间也没有搞定,向大神求助了: E. ]5 M: h  {2 k! t
    #include "stdafx.h"1 b) Z9 R. J, {+ T/ G# {) k
    2 ~# i/ r- s- u: H/ W* _
    #include <stdio.h>6 X4 O6 S6 ^. R
    #include <stdlib.h>
    ' T+ @4 u' l5 z0 i$ @5 u#include <string.h>1 s0 \# T* K/ @/ f& a. ^

    4 i! R! B6 o5 o2 W( P' F#include "mathlink.h"
    ; q/ |: f( e# P, k( C5 E3 B7 e2 }
    2 G: P/ z8 N8 q% vdouble f(MLINK lp,double x);( a3 c  b# w) _9 o

    ' p" ?% l% J/ Wint main()
    0 O9 f* k, e. w2 \. R( ]% k+ [{1 l: `7 A# {. A7 \
            int argc=4;
    8 t2 ~4 }/ _& B/ S3 u% I        char*argv[5] ={"-linkname", "F:\\Program Files\\Wolfram Research\\Mathematica\\8.0", "-linkmode", "launch", "NULL"};//指定连接方式7 f7 O$ r" v: Q! H! j
            MLEnvironment env;//mathlink的环境变量
    / R0 [# O2 r! X7 H        MLINK lp;( A, }! O( R" d
            env=MLInitialize(NULL);//初始化
    # j1 i2 K. G5 S2 L* {        if(env==NULL)0 g* w+ \5 V" _& A
            {  O* S) m! ]4 L
                    printf("initialization error!\n");
    ( X4 t$ C, Z# ~& C- K  W/ O/ L                return 1;
    . [/ A/ e' O: e) U        }
    ( a0 r* x: H1 U2 D, b  [& l        lp=MLOpen(argc, argv);
    , C  Y' J" I& C  S  a1 j        if(lp==NULL)3 E9 G6 J$ G) x4 w9 s
            {
    5 i4 [2 W; i( n9 m0 s                printf("open error!\n");. N' Z3 \0 P( F; e; L
                    return 1;4 y: F( Q2 n1 v9 s
            }' x( A4 n$ B0 J: ^7 V
            for(int i=1;i<=10;i++)
    ! m, r" K2 B6 L! P3 z  \                printf("cos(%d)=  %lf\n",i,f(lp,i));//计算f(1)至f(10)
    / v/ M. ]! N9 R
    & D; `; j; B2 }5 U7 _8 B        MLClose(lp);0 ^* S, V) f# v
            MLDeinitialize(env);
    1 |& B1 W4 U) I3 v2 P6 p
    $ _" r# m5 e6 x: n# p! N7 F        //printf("Hello World!\n");# z; z# J" A0 K0 g( ]5 o
            return 0;7 P  Q% |/ D$ b$ Q: o, [3 K
    }
    ( ^$ c4 W5 e/ N, x; _2 r! g- i: M7 T- B. |. |

    , O( q* p) F1 h2 rdouble f(MLINK lp, double x)
    ; a0 Z# s! o( `{
    ) {% s- J# u9 N" ~  W; A  \        double res;
    ! o! `) P1 Z+ Q' r7 o7 y# m) T        int pkt;
    # b9 U) N# ?. L8 f4 v        static int done=0;
    5 a4 \# ~5 U0 h4 B2 s        if(!done)
    0 v" S$ I+ H8 @1 U- ^6 A% w, W        {
    3 A: Q4 |7 r& M; D) D# n( o                //char* expression="cos(x)^5";
    ' m$ P! `$ [  M                MLPutFunction(lp,"EvaluatrPacket",1);
    0 Y3 r1 b. \  J+ }1 q                MLPutFunction(lp,"ToExpression",1);
    + j% M' G% V+ M+ a' O2 S                MLPutString(lp,"cos(x)^5");1 x/ U! X4 j9 @* n4 z
                 MLEndPacket(lp);
    ; @# J5 A( F; p6 j  e, u                while((pkt=MLNextPacket(lp),pkt)&&pkt!=RETURNPKT);  w' ]' I! g9 m4 M3 G
                    MLNewPacket(lp);" A2 A. a6 L! Q$ p( x
                    done=1;
    , U2 B; R. f3 u1 c: y7 Q$ v        }
    9 [7 W- O) k, u  z3 `- s  C        MLPutFunction(lp,"EvaluatePacket",1);
    9 g( O. x9 h/ \9 G& p4 n& f        MLPutFunction(lp,"N",1);: J( T& G" B6 r# T* U9 e$ [
            MLPutFunction(lp,"F",1);$ k! ]; Q% _) Z: f9 R
            MLPutReal(lp,x);
    ; @$ N! |: |( f7 z. q        MLEndPacket(lp);
    / E% J: U: C; E2 ^6 n* D% U5 g& g  ?" k        while((pkt=MLNextPacket(lp))&&pkt!=RETURNPKT);5 o7 B' Y* ]! q! R) J8 C' j  [* k7 H
            MLNewPacket(lp);- o1 H2 ~; [2 M+ f
            MLGetReal(lp, &res);$ U5 `3 |& J' T9 U7 o
            return res;+ ^$ Q# `# d9 q5 M$ m' f( n0 x
    }
    & p5 j, e' o% A- i5 ?  u7 V/ ]$ `: Y( R) b+ O  p* D. S2 ]
    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-4-22 12:28 , Processed in 0.472826 second(s), 67 queries .

    回顶部