24小时热门版块排行榜    

北京石油化工学院2026年研究生招生接收调剂公告
查看: 628  |  回复: 8
当前主题已经存档。

孔方兄

铜虫 (初入文坛)

[交流] 【求助】一个生物类的公式如何反编译(悬赏20)

本人是学习生物类的,数学很糟糕,悬赏20个金币,求助一公式反编译。
X=363.1888+y* 23.25622-y的平方* 1.745972+y的立方*0.0552203,
要求输入x,得到y值。
如果有人能用vb实现同样的功能,同样有奖。
谢谢个位高手出手相助。

[ Last edited by csfn on 2008-11-30 at 11:53 ]
回复此楼

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

595304082syl

木虫 (小有名气)

上网搜搜一元三次方程的万能公式,照着做就行了
2楼2008-07-18 10:47:48
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

spkeey

金虫 (正式写手)

★ ★
suntao1982(金币+2,VIP+0):xiexie
三次方程可能有一个值对应几个自变量的情况(不符合函数定义),只能说在某个区间上的反函数。

你的导数  x=23.25622-1.745972y1+0.0552203*y2 (二次可能经过X轴)算了下没有经过0。是单调的,不用分开讨论。。算你运气。。。。
可以求反函数。

数值上可以这样处理的:

y=a+bx+cx2+dx3
等效于求
0=(a-y)+bx+cx2+dx3 的根。。

===========
此有公式。

[ Last edited by spkeey on 2008-7-19 at 03:37 ]
SPKEEY
3楼2008-07-18 22:13:33
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

madonion

金虫 (正式写手)

★ ★ ★
suntao1982(金币+3,VIP+0):辛苦了,欢迎常来!
卡丹公式
确定一般的三次方程的根的公式.
如果用现在的数学语言和符号,卡丹公式的结论可以借助于下面这样一种最基本的设想得出。
假如给我们一个一般的三次方程:
ax3+3bx2+3cx+d=0 (1)
如果令
x=y-b/a
我们就把方程(1)推导成
y3+3py+2q=0 (2)
其中 p=c/a-b2/a2,2q=2b3/a3-3bc/a2+d/a 。
借助于等式
y=u-p/u
引入新变量u 。把这个表达式带入(2),得到:
(u3)2+2qu3-p3=0 (3)
由此得
u3=-q±√(q2+p3),
于是
y=3√(-q±√(q2+p3))-p/3√(-q±√(q2+p3)) 。
=3√(-q+√(q2+p3))+3√(-q-√(q2+p3)) 。
(最后这个等式里的两个立方根的积等于-p 。)
这就是著名的卡丹公式。
如果再由y转到x,那么,就能得到一个确定一般的三次方程的根的公式。
4楼2008-07-19 20:01:26
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

madonion

金虫 (正式写手)

上面的是网上搜的,不太完全,最好找本数学手册,找卡丹公式,就是一元三次方程的球根公式,直接按着编程就行,很简单的
5楼2008-07-19 20:03:20
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

madonion

金虫 (正式写手)

★ ★ ★
suntao1982(金币+3,VIP+0):辛苦了,欢迎常来!
找到一个现成的,不过是c语言的
用卡丹公式解一元三次方程

#include

#include

#include

//////////////////函数--用卡丹公式解一元三次方程/////////////////

void fun(double a,double b,double c,double d,

   double *real_y1,double *real_y2,double *real_y3,

   double *imag_y1,double *imag_y2,double *imag_y3)

{

double p,q,r,u,v,g,h,fai;

p=(3.0*a*c-b*b)/(3*a*a);

q=(2.0*pow(b,3.0)-9*a*b*c+27.0*a*a*d)/(27.0*pow(a,3.0));

r=b/(3.0*a);

h=pow(q/2.0,2.0)+pow(p/3.0,3.0);

g=sqrt(h);

if(h>=0)

{

  if(-q/2.0+g<0)

  u=-pow(fabs(-q/2.0+g),1.0/3.0);

  else

  u=pow((-q/2.0+g),1.0/3.0);

  if(-q/2.0-g<0)

  v=-pow(fabs(-q/2.0-g),1.0/3.0);

  else

  v=-pow((-q/2.0-g),1.0/3.0);

  if(h==0)

  {

   *real_y1=u+v-r;            *imag_y1=0;

      *real_y2=-(u+v)/2-r;       *imag_y2=0;

   *real_y3=-(u+v)/2-r;       *imag_y3=0;

  }

  else

  {

   *real_y1=u+v-r;       *imag_y1=0;

   *real_y2=-(u+v)/2;    *imag_y2=sqrt(3.0)*(u-v)/2;

   *real_y3=-(u+v)/2;    *imag_y3=-sqrt(3.0)*(u-v)/2;

  }

}

else

{

  fai=acos((-q/2)/(sqrt(pow(fabs(p),3)/27)));

  *real_y1=2*sqrt(fabs(p)/3.0)*cos(fai/3.0)-r;

  *real_y2=-2*sqrt(fabs(p)/3.0)*cos((fai+3.1415926)/3.0)-r;

        *real_y3=-2*sqrt(fabs(p)/3.0)*cos((fai-3.1415926)/3.0)-r;

  *imag_y1=0;   *imag_y2=0;    *imag_y3=0;

}

}

//////////////////////////////////主函数////////////////////////////////

void main()

{

  double a,b,c,d;

  double real_x1,real_x2,real_x3;

  double *preal_x1=&real_x1;

  double *preal_x2=&real_x2;

  double *preal_x3=&real_x3;

  double imag_x1,imag_x2,imag_x3;

  double *pimag_x1=&imag_x1;

  double *pimag_x2=&imag_x2;

  double *pimag_x3=&imag_x3;

  cout<<"请输入方程的系数a,b,c,d:"<<"\n"<
  cout<<"系数a=";

  cin>>a;

  cout<
  cout<<"系数b=";

  cin>>b;

  cout<
  cout<<"系数c=";

  cin>>c;

  cout<
  cout<<"系数d=";

  cin>>d;

  cout<
  fun(a,b,c,d,preal_x1,preal_x2,preal_x3,pimag_x1,pimag_x2,pimag_x3);

  cout<<"  "<<"   "<<"根的实部"<<"      "<<"根的虚部"<<"\n"<
  printf("x1   %.5f      %.5f\n\n",real_x1,imag_x1);

  printf("x2   %.5f      %.5f\n\n",real_x2,imag_x2);

  printf("x3   %.5f      %.5f\n\n",real_x3,imag_x3);

}
6楼2008-07-19 20:05:46
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

匿名

用户注销 (小有名气)


suntao1982(金币+1,VIP+0):xiexie
本帖仅楼主可见
7楼2008-07-20 09:42:57
已阅   申请程序强帖   回复此楼   编辑   查看我的主页

孔方兄

铜虫 (初入文坛)

看了大家的回答,真是万分感谢,从上大学开始就没有学过数学了,对大家的回答真是一头雾水,卡丹公式,看样子,我前面的想法太简单了,以为可以得到一个简单的方程式。
关于金币,实在是不知道该给谁?版主给我发吧。
关于卡丹公式,我看了半天没有明白,如果有那位高手,能直接帮我写一个程序就好了,生成exe文件,输入x,等到y

[ Last edited by 孔方兄 on 2008-7-20 at 10:21 ]
8楼2008-07-20 10:12:53
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sjfcs001

铁杆木虫 (正式写手)

★ ★ ★ ★
csfn(金币+4,VIP+0):3Q
我用vb作了个简单的计算程序,可直接运行的,不过只是近似运算,误差在5%以内,仅满足一般工程计算需要

不知道对楼主有用没?
9楼2008-08-30 13:47:08
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 孔方兄 的主题更新
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 一志愿武汉理工,总分321,英一数二,求老师收留。 +7 nnnnnnn5 2026-03-25 7/350 2026-03-29 00:32 by 我是小康
[考研] 085600,专业课化工原理,321分求调剂 +4 大馋小子 2026-03-28 4/200 2026-03-29 00:32 by 544594351
[考研] 295求调剂 +4 wei-5 2026-03-26 4/200 2026-03-28 23:20 by 小木虫tim
[考研] 一志愿郑州大学,080500学硕,总分317分求调剂 +5 举个栗子oi 2026-03-24 6/300 2026-03-28 23:03 by lizhi8172
[考研] 315求调剂 +4 akie... 2026-03-28 5/250 2026-03-28 21:05 by zhq0425
[考研] 275求调剂 +10 Micky11223 2026-03-25 14/700 2026-03-28 15:48 by Micky11223
[考研] 085602 化工专硕 338分 求调剂 +12 路痴小琪 2026-03-27 12/600 2026-03-28 15:41 by L135790
[考研] 339求调剂,想调回江苏 +6 烤麦芽 2026-03-27 8/400 2026-03-28 10:40 by 烤麦芽
[考研] 一志愿北京化工大学 070300 学硕 336分 求调剂 +9 vv迷 2026-03-22 9/450 2026-03-27 15:59 by 不吃魚的貓
[考研] 307求调剂 +8 超级伊昂大王 2026-03-24 9/450 2026-03-27 15:34 by 超级伊昂大王
[考研] 287求调剂 +10 land xuxu 2026-03-26 10/500 2026-03-27 15:33 by 帕尔马拉特
[考研] 348求调剂 +4 小懒虫不懒了 2026-03-27 5/250 2026-03-27 12:47 by 果果妈咪
[考研] 316求调剂 +5 Pigcasso 2026-03-24 5/250 2026-03-27 12:10 by zhshch
[考研] 一志愿211,335分,0856,求调剂院校和导师 +4 倾____萧 2026-03-27 5/250 2026-03-27 11:52 by zhshch
[考研] 求调剂323材料与化工 +7 1124361 2026-03-24 7/350 2026-03-27 10:22 by wangjy2002
[考研] 333求调剂 +6 wfh030413@ 2026-03-23 6/300 2026-03-26 22:45 by 学员8dgXkO
[考研] 329求调剂 +5 1() 2026-03-22 5/250 2026-03-26 20:40 by fmesaito
[考研] 求调剂 +8 Auroracx 2026-03-22 8/400 2026-03-26 19:55 by 不吃魚的貓
[考研] 机械学硕总分317求调剂!!!! +4 Acaciad 2026-03-25 4/200 2026-03-25 19:59 by hanserlol
[考研] 269求调剂 +4 我想读研11 2026-03-23 4/200 2026-03-23 21:25 by pswait
信息提示
请填处理意见