QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 3396|回复: 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次方的程序,整个程序为,结果却不对,调试了很长时间也没有搞定,向大神求助了: ], b  Y4 W4 K0 \# p0 N1 I4 h
    #include "stdafx.h"# {" U4 e, }& P6 n! Z/ c  Q2 ^
    8 _. p$ S/ E8 @0 ]- I" }9 D; S
    #include <stdio.h>1 p! y8 {2 g& F
    #include <stdlib.h>
    9 @3 m+ d1 A8 @2 y2 a#include <string.h>% ^# S9 k: b2 T+ _9 Y. z
    " s; k+ y4 S; N7 @1 B7 I9 k
    #include "mathlink.h"
    ! o( s. P8 p- v1 E0 ?) D- T0 s. }
    double f(MLINK lp,double x);+ m4 V% {3 k( }" {+ s
    ' x3 H/ W% o, c$ o% e3 O
    int main()& i8 T* u! |1 e3 w
    {
    2 h' p- W0 S, ?        int argc=4;
    9 ?3 e7 L6 p- b8 A* y# y, E1 I        char*argv[5] ={"-linkname", "F:\\Program Files\\Wolfram Research\\Mathematica\\8.0", "-linkmode", "launch", "NULL"};//指定连接方式
    ( \9 I. W) u: R2 `' N. k        MLEnvironment env;//mathlink的环境变量
    - B# C+ F% [# z( |2 L" ~& h        MLINK lp;4 L& x! l2 Y1 Y9 l6 u1 ?' y- \
            env=MLInitialize(NULL);//初始化
    - }7 q) _8 o- q8 m( B; z$ V        if(env==NULL)
    6 d6 G# Y8 B( }2 O2 s4 A' I; o2 T2 i        {
    ( ?7 ?8 X! c$ _+ [                printf("initialization error!\n");, M! |* C- r; `3 z* E: f
                    return 1;
    6 X( r% s7 Q; t0 J' G5 g( ]; v) R        }2 B4 Y! `9 m+ F5 K) G  K
            lp=MLOpen(argc, argv);
    & o8 }( ^+ M5 I& V( C, ~0 S        if(lp==NULL)3 A6 a3 N2 E$ ^- K$ ]; X1 J. C
            {# b4 e' z( k/ s
                    printf("open error!\n");6 d) e: A( {, O  h$ X- `& ?: b# o
                    return 1;
    : p  o: I1 W6 a* l8 M; M        }
    + M# ?, N4 d4 j. V  d2 Z7 f        for(int i=1;i<=10;i++)# d3 `8 s# l$ b+ _! Y
                    printf("cos(%d)=  %lf\n",i,f(lp,i));//计算f(1)至f(10)4 c7 H" r6 B  v. L
      X, J+ c  z) z# s
            MLClose(lp);( ?' T6 {8 W$ |: l
            MLDeinitialize(env);# T: a! W8 F2 ^! C' e6 \

    3 J# K$ E' e  x" Y* e( a; o        //printf("Hello World!\n");
    $ {+ b5 O: G" n/ v! t* D        return 0;
    9 d9 }5 o0 `9 U: e& O/ |}. I% R: ^9 V, I: \# V, `; V

    ( J- i/ z/ k' {+ W& i
    - j% \4 N/ [- U% }: r9 M1 m( tdouble f(MLINK lp, double x)$ [* ^) S0 D3 S
    {
    6 a! U! d) {3 ?1 J+ `' f        double res; / R3 [% q# f. v1 N; K- f
            int pkt;+ ]! Y! E! N$ {
            static int done=0;6 y7 _6 Z5 A2 r4 ^$ W
            if(!done)
    & |! C1 ~5 ^- w, D" j  A) E7 w        {& U) L$ b8 `% }" m
                    //char* expression="cos(x)^5";
    , O" K$ d8 U! ~: r! b                MLPutFunction(lp,"EvaluatrPacket",1);
    5 z" Y7 ~, `! d                MLPutFunction(lp,"ToExpression",1);
    : ^+ ^, V  B, x                MLPutString(lp,"cos(x)^5");
    8 _- X6 a! p) u4 P4 b; ^* a+ A; m/ H             MLEndPacket(lp);  t7 r' X9 `; r6 }+ V* O1 x! e
                    while((pkt=MLNextPacket(lp),pkt)&&pkt!=RETURNPKT);
    - Y6 }/ L) {& V                MLNewPacket(lp);3 }* ]% o$ b0 R
                    done=1;; G$ ?9 b5 O- N! `/ i3 a0 S
            }5 ^6 \0 r* n0 |9 ~
            MLPutFunction(lp,"EvaluatePacket",1);
    & }' l5 V( A* n, T        MLPutFunction(lp,"N",1);
    . G- O4 E( [# x+ f$ \        MLPutFunction(lp,"F",1);
    $ r# h2 Y( _& a2 k2 F: Q        MLPutReal(lp,x);
    0 @0 [, e0 E7 q/ f5 R$ j  b; ?        MLEndPacket(lp);/ R9 V& y" o: z; A, d1 W
            while((pkt=MLNextPacket(lp))&&pkt!=RETURNPKT);! y+ J- h- O, g  Z
            MLNewPacket(lp);
    / _& Y* n) g) f        MLGetReal(lp, &res);
    + {6 |2 f. \6 [8 Z& X0 Z9 Q" n        return res;
    . d" y" ?/ k% }: n4 i9 y% R}$ Q( A  t/ x2 y
    8 `& S; E& U) U* Y% h+ @. H: `6 w
    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-10-9 09:18 , Processed in 0.334293 second(s), 64 queries .

    回顶部